一个SQL的问题,分须少,请帮忙.
--Select 语句
select convert(varchar(10),sc.rq,120) as 'date',clxbh,
sum(case when clxbh=2 and cplx=1 then sc.sl end) as '2.5元A' ,
sum(case when clxbh=3 and cplx=1 then sc.sl end) as '2.5元B' ,
sum(case when clxbh=4 and cplx=1 then sc.sl end) as '2.5元C'
from sc
where convert(varchar(10),sc.rq,120)='2007-01-20'
group by convert(varchar(10),sc.rq,120),clxbh
结果:
rq clxbh 2.5元A 2.5元B 2.5元C
2007-01-20 1 NULL NULL NULL
2007-01-20 2 234 NULL NULL
2007-01-20 3 NULL 163 NULL
2007-01-20 4 NULL NULL 436
2007-01-20 5 NULL NULL NULL
我想得到的结果:
rq clxbh 2.5元A
2007-01-20 1 NULL
2007-01-20 2 234
2007-01-20 3 163
2007-01-20 4 436
2007-01-20 5 NULL
谢谢谢谢!!
参考答案:select convert(varchar(10),sc.rq,120) as 'date',clxbh,
sum(case when clxbh in(2,3,4) and cplx=1 then sc.sl end) as '2.5元A'
from sc
where convert(varchar(10),sc.rq,120)='2007-01-20'
group by convert(varchar(10),sc.rq,120),clxbh