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

根据不同月份把列名设为一月,二月...

一个人上路 发布于 2007-03-23 00:07, 698 次点击
数据库有这样一张表
ID Time Qut
001 **** 100
001 **** 200
002 **** 100
003 **** 150
... .... ....
要求打印出如下效果
人员 一月 二月 三月 ... 十二月 个人汇总
001 ... ... ... ... ... ...(个人全年总和)
002 ... ... ... ... ... ...
003 ... ... ... ... ... ...
... ... ... ... ... ... ...
总计 (一月的总和) ... ... ... ... ...(此数据是全年总和)
我现在的难点是如何根据不同月份把列名设为一月,二月...以及最后一行
"总计 ... ... ... ... ... ...(此数据是全年总和)"
如何得到.
4 回复
#2
棉花糖ONE2007-03-23 00:58
select id as 人员,sum(case Time when 1 then Qut else 0 end) as 一月,到12月的类似,sum(Qut) as 个人汇总from table group by id
union all
select '总计',(select sum(Qut) where time=1) as 一月,到12月的类似,(select sum(Qut) from table) as 个人汇总
#3
一个人上路2007-03-24 14:10
谢谢
#4
yunj11052007-03-29 11:35
呵呵,路过刚好用的上谢谢
#5
kanter2007-04-26 16:11
好东西,谢了
1