--1.4.1>.会计科目--<分级查询>--<方案1>
--<所有字段>
--<重要字段>
--<调整字段位置>
--<会计科目分级>连接
select
(convert(varchar(10),ltrim(rtrim(code.iyear))) + '-' +convert(nvarchar(100),ltrim(rtrim(code.ccode))) ) as科目_年度_编码_1级,
code.iyear As 科目年度,
code.ccode As 科目编码_1级 ,
code.ccode_name As 科目名称_1级 ,
code_2Ji.科目编码_2级 ,
code_2Ji.科目名称_2级 ,
code_3Ji.科目编码_3级 ,
code_3Ji.科目名称_3级 ,
code_4Ji.科目编码_4级 ,
code_4Ji.科目名称_4级
from
code
left outerjoin
(
select
( left(convert(varchar(10),ltrim(rtrim(code.iyear))) + '-' +convert(nvarchar(100),ltrim(rtrim(code.ccode))) ,9) ) as 科目_年度_编码_1级,
( left(convert(varchar(10),ltrim(rtrim(code.iyear))) + '-' +convert(nvarchar(100),ltrim(rtrim(code.ccode))) ,11) ) as 科目_年度_编码_2级,
code.ccode As 科目编码_2级,
code.ccode_name As 科目名称_2级
from
code
where
code.igrade =2
) as code_2Ji
on (convert(varchar(10),ltrim(rtrim(code.iyear))) + '-' +convert(nvarchar(100),ltrim(rtrim(code.ccode))) ) =code_2Ji.科目_年度_编码_1级
left outer join
(
select
( left(convert(varchar(10),ltrim(rtrim(code.iyear))) + '-' +convert(nvarchar(100),ltrim(rtrim(code.ccode))) ,11) ) as 科目_年度_编码_2级,
( left(convert(varchar(10),ltrim(rtrim(code.iyear))) + '-' +convert(nvarchar(100),ltrim(rtrim(code.ccode))) ,13) ) as 科目_年度_编码_3级,
code.ccode As 科目编码_3级,
code.ccode_name As 科目名称_3级
from
code
where
code.igrade =3
) as code_3Ji
on code_2Ji.科目_年度_编码_2级 =code_3Ji.科目_年度_编码_2级
left outer join
(
select
( left(convert(varchar(10),ltrim(rtrim(code.iyear))) + '-' +convert(nvarchar(100),ltrim(rtrim(code.ccode))) ,13) ) as 科目_年度_编码_3级,
( left(convert(varchar(10),ltrim(rtrim(code.iyear))) + '-' +convert(nvarchar(100),ltrim(rtrim(code.ccode))) ,15) ) as 科目_年度_编码_4级,
code.ccode As 科目编码_4级,
code.ccode_name As 科目名称_4级
from
code
where
code.igrade =4
) as code_4Ji
on code_3Ji.科目_年度_编码_3级 =code_4Ji.科目_年度_编码_3级
--where code.bend = 1 --只查询1级科目
where code.igrade = 1 --只查询1级科目
order by (convert(varchar(10),ltrim(rtrim(code.iyear))) + '-' +convert(nvarchar(100),ltrim(rtrim(code.ccode))) )
本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请
点击举报。