22,210
社区成员
发帖
与我相关
我的任务
分享
select cname,
convert(numeric(18,2),
isnull((
select sum(amount*rate)
from cs_Receive where dzid=12409 and chargekind=a.id
),0)) as amount
from cs_chargekind as a where cname in ('管理费','改船费用','过磅费','商检查柜费','海关查柜费','联单费','船单录入费','海关数据录入费','续页费',
'代检费','其他费用' ,'特殊费用','吊柜费','港口建设费','港口设施保安费','报关费','管理费')
union all
select '合计' as cname,convert(numeric(18,2),
isnull((
select sum(amount*rate)
from cs_Receive where dzid=12409
),0)
)as amount
order by (
select case cname
when '报关费' then 1
when '联单费' then 2
when '续页费' then 3
when '代检费' then 4
when '海关查柜费' then 5
when '商检查柜费' then 6
when '过磅费' then 7
when '船单录入费' then 8
when '改船费用' then 9
when '海关数据录入费' then 10
when '其他费用' then 11
when '吊柜费' then 12
when '特殊费用' then 13
when '港口建设费' then 14
when '港口设施保安费' then 15
when '管理费' then 16
when '合计' then 17
end
)
select cname,a as c
from aa
union all
select 'r' as cname,(select b from bb) as c
order by (
case cname when 'q' then 4 when 'r' then 1 when 'e' then 2 when 'w' then 3 end
)
那就加个
select *
from
(
....
)t
order by
case cname when '报关费' then 1
when '联单费' then 2
when '续页费' then 3
when '代检费' then 4
when '海关查柜费' then 5
when '商检查柜费' then 6
when '过磅费' then 7
when '船单录入费' then 8
when '改船费用' then 9
when '海关数据录入费' then 10
when '其他费用' then 11
when '吊柜费' then 12
when '特殊费用' then 13
when '港口建设费' then 14
when '港口设施保安费' then 15
when '管理费' then 16
when '合计' then 17
end
order by
case cname when '报关费' then 1
when '联单费' then 2
when '续页费' then 3
when '代检费' then 4
when '海关查柜费' then 5
when '商检查柜费' then 6
when '过磅费' then 7
when '船单录入费' then 8
when '改船费用' then 9
when '海关数据录入费' then 10
when '其他费用' then 11
when '吊柜费' then 12
when '特殊费用' then 13
when '港口建设费' then 14
when '港口设施保安费' then 15
when '管理费' then 16
when '合计' then 17
end