表A:
id name class num
1 张三 a1 10
2 王五 a1 5
3 李六 a2 20
4 张三 a1 14
5 王五 a3 10
6 张三 a2 7
7 李六 a3 5
8 张三 a3 9出输:
id name a1 a2 a3 ……
1 张三 24 7 9
2 王五 5 0 10
3 李六 0 20 5注:a1、a2、a3……a10一共有10个到
按name汇总求出各人员的sum(a1)……sum(a10)的值以列的形式显示
id name class num
1 张三 a1 10
2 王五 a1 5
3 李六 a2 20
4 张三 a1 14
5 王五 a3 10
6 张三 a2 7
7 李六 a3 5
8 张三 a3 9出输:
id name a1 a2 a3 ……
1 张三 24 7 9
2 王五 5 0 10
3 李六 0 20 5注:a1、a2、a3……a10一共有10个到
按name汇总求出各人员的sum(a1)……sum(a10)的值以列的形式显示
解决方案 »
- 请看以下,测试UPDATE方法
- 如何用 C# 修改系统的 windows\system32\drivers\etc\hosts 文件内容???
- 如何遍历HashTable修改其中的所有数据(Value)
- VS 2005中,怎样实现在关闭一个窗体时,也同时关闭另一个窗体...
- c# 关于网络编程
- 急!!!谁有<windows网络编程 第二版>的中文电子书?
- 如何获取某个字体的子集呢?
- 微软作的.net程序,"大"家伙却用比较少的内存!昨天晚上看了一晚上也没看出个所以然来
- .net java 好书推荐
- 打开窗口问题,急~~
- ACTION到一个页面获取不到值?
- Visul studio 2005编译的项目如何能正确的在Vista系统上运行,错误如下:
,sum(case class when 'a1' then num else 0 end) as 'a1'
,sum(case class when 'a2' then num else 0 end) as 'a2'
,sum(case class when 'a3' then num else 0 end) as 'a3'
from test
group by name
select id,name
,sum(case class when 'a1' then num else 0 end) 'a1'
,sum(case class when 'a2' then num else 0 end) 'a2'
,sum(case class when 'a3' then num else 0 end) 'a3'
from A
group by id
,sum(case class when 'a1' then num else 0 end) as 'a1'
,sum(case class when 'a2' then num else 0 end) as 'a2'
,sum(case class when 'a3' then num else 0 end) as 'a3'
from tb
group by name
--动态 不固定class的declare @sql varchar(8000)
select @sql=isnull(@sql+',','')+'sum(case when class='''+class+''' then num else 0 end) as ['+class
+']' from tb group by class
exec('select name,'+@sql+' from tb group by tb')