注册 登录
编程论坛 SQL Server论坛

【求助】如何通过软件提供的数据实现特定报表

nature_730 发布于 2012-02-27 16:06, 435 次点击
KMBH           JJE          DJE           XMBH
50301040101    3891.9000    0.0000        2611k3190044
50301040101    1944.0000    0.0000        2611k3190044
50301040101    2378.0000    0.0000        2611k3190044
50301040101    1073.0000    0.0000        2611k3190044
50301040103    558.0000     0.0000        2611k3190044
50301040106    900.0000     0.0000        2611k3190044
50301040205    1055.0000    0.0000        2611k3190044
50301040205    2195.0000    0.0000        2611k3190044
99911          0.0000       28500.0000    2611k3190044


我们年底要出一份这样的报表,若干个xmbh、kmbh,目前基本手工加总操作,非常麻烦。以一个项目为例,实现的效果如下所示,求助各位大虾,感激涕零!!!

xmbh    99911(加总金额dje)    50301040101(加总金额jje)    50301040103(加总金额jje)    50301040106(加总金额jje)    50301040205(加总金额jje)



[ 本帖最后由 nature_730 于 2012-2-27 16:16 编辑 ]
6 回复
#2
cnfarer2012-02-27 16:13
图呢?
#3
cnfarer2012-02-27 16:26
一条SQL语句就可以解决了
#4
nature_7302012-02-28 14:18
sql语句如何编写,请示下
#5
cnfarer2012-02-28 18:32
#6
nature_7302012-02-29 10:28
还得麻烦版主,我们的数据远比你给我的示例麻烦的多,因为有若干个xmbh kmbh,按照示例的方法还是不知如何实现。
case when=?then end
这块就不知道该如何编写了。个人认为,除了case when之外,还得多层嵌套
#7
cnfarer2012-03-01 13:09
select       xmbh,
             sum(case when kmbh=99911 then dje else 0 end) as [99911],
             sum(case when kmbh=50301040101 then jje end) as [50301040101],
             ...
from         表名
group by     xmbh
1