求一个行列转换的sql语句
时间:2011-12-26
来源:互联网
有这么一个视图表
信息ID 所述栏目 所属部门 积分
1 公告栏 部门a 1
2 综合信息 部门b 2
3 图片新闻 部门c 1
4 公告栏 部门a 1
5 图片新闻 部门a 1
。。。。
用户要求列出每个部门的每个栏目积分表,也就是变成了这样
栏目名称 部门a 部门b 部门c 合计
公告栏 1 2 3 6
图片新闻 2 4 5 11
综合信息 4 3 1 8
。。。
合计 7 9 9 25
我想知道这能用一个sql列出来吗,如果能得话,如何列出来呀,对我来说太难了
信息ID 所述栏目 所属部门 积分
1 公告栏 部门a 1
2 综合信息 部门b 2
3 图片新闻 部门c 1
4 公告栏 部门a 1
5 图片新闻 部门a 1
。。。。
用户要求列出每个部门的每个栏目积分表,也就是变成了这样
栏目名称 部门a 部门b 部门c 合计
公告栏 1 2 3 6
图片新闻 2 4 5 11
综合信息 4 3 1 8
。。。
合计 7 9 9 25
我想知道这能用一个sql列出来吗,如果能得话,如何列出来呀,对我来说太难了
作者: xiaoliuvv 发布时间: 2011-12-26
行转列,论坛上太多了,查一下一大堆.
作者: qianjin036a 发布时间: 2011-12-26
90度行转列 在加一个compute by
作者: q465897859 发布时间: 2011-12-26
我已经找到统计方法了,但我用的是asp编程,这个查询语句只能在查询分析器中运行,我如何做成视图?或者写成asp的语句???
DECLARE @s nvarchar(4000)
SET @s = ''
SELECT @s = @s + ',' + quotename([bumen_name])
+ '=sum(case when [bumen_name]=' + quotename([bumen_name], '''')
+ ' then [jf] else 0 end)'
FROM jftj1
GROUP BY [bumen_name], [bumen_px]
ORDER BY [bumen_px] ASC
EXEC ('select [lm_name] as 栏目' + @s + ',[总积分]=sum([jf]) from jftj1 group by [lm_name],[lm_px] order by [lm_px] asc')
DECLARE @s nvarchar(4000)
SET @s = ''
SELECT @s = @s + ',' + quotename([bumen_name])
+ '=sum(case when [bumen_name]=' + quotename([bumen_name], '''')
+ ' then [jf] else 0 end)'
FROM jftj1
GROUP BY [bumen_name], [bumen_px]
ORDER BY [bumen_px] ASC
EXEC ('select [lm_name] as 栏目' + @s + ',[总积分]=sum([jf]) from jftj1 group by [lm_name],[lm_px] order by [lm_px] asc')
作者: xiaoliuvv 发布时间: 2011-12-26
并且这条语句生成后,我如何调用字段名字呀???麻烦各位了,
作者: xiaoliuvv 发布时间: 2011-12-26
相关阅读 更多
热门阅读
-
office 2019专业增强版最新2021版激活秘钥/序列号/激活码推荐 附激活工具
阅读:74
-
如何安装mysql8.0
阅读:31
-
Word快速设置标题样式步骤详解
阅读:28
-
20+道必知必会的Vue面试题(附答案解析)
阅读:37
-
HTML如何制作表单
阅读:22
-
百词斩可以改天数吗?当然可以,4个步骤轻松修改天数!
阅读:31
-
ET文件格式和XLS格式文件之间如何转化?
阅读:24
-
react和vue的区别及优缺点是什么
阅读:121
-
支付宝人脸识别如何关闭?
阅读:21
-
腾讯微云怎么修改照片或视频备份路径?
阅读:28