博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
SQl 行转列,列转行 (PIVOT,UPIVOT)
阅读量:4467 次
发布时间:2019-06-08

本文共 1199 字,大约阅读时间需要 3 分钟。

表t_pivot

SQl 行转列,列转行 (PIVOT,UPIVOT) - zc - zczhangchi 的博客

 

转后效果

SQl 行转列,列转行 (PIVOT,UPIVOT) - zc - zczhangchi 的博客
 
方法 1 (常用方法 case when)

SELECT     buydate,

                  SUM(CASE WHEN type = '生活' THEN typecount ELSE 0 END) AS 生活,

                  SUM(CASE WHEN type = '学习' THEN typecount ELSE 0 END) AS 学习,                   SUM(CASE WHEN type = '动画' THEN typecount ELSE 0 END) AS 动画,

                  SUM(CASE WHEN type = '游戏' THEN typecount ELSE 0 END) AS 游戏 FROM         dbo.t_pivot GROUP BY buydate

方法 2 (PIVOT)

SELECT     buydate,

                  sum(CASE WHEN 生活 IS NULL THEN 0 ELSE 生活 END) AS '生活',

                  sum(CASE WHEN 学习 IS NULL THEN 0 ELSE 学习 END) AS '学习',                   sum(CASE WHEN 动画 IS NULL THEN 0 ELSE 动画 END) AS '动画',

                  sum(CASE WHEN 游戏 IS NULL THEN 0 ELSE 游戏 END) AS '游戏' FROM        t_pivot PIVOT (sum(typecount) FOR type IN (生活, 学习, 动画, 游戏)) AS pvt GROUP BY buydate

 

2.行转列

表t_unpivot

SQl 行转列,列转行 (PIVOT,UPIVOT) - zc - zczhangchi 的博客

转后效果

SQl 行转列,列转行 (PIVOT,UPIVOT) - zc - zczhangchi 的博客
 
方法 1 (常用方法 case when)
 
SELECT     stuname, math AS scores, 'math' AS course FROM         dbo.t_unpivot UNION SELECT     stuname, english AS scores, 'english' AS course FROM         dbo.t_unpivot UNION SELECT     stuname, chinese AS scores, 'chinese' AS course FROM         dbo.t_unpivot UNION SELECT     stuname, history AS scores, 'history' AS course FROM         dbo.t_unpivot

方法 2 (UPIVOT)

SELECT     stuname, course, scores FROM        t_unpivot UNPIVOT (scores FOR course IN (math, english, chinese, history)) AS pvt

转载于:https://www.cnblogs.com/jameslif/p/3296105.html

你可能感兴趣的文章
初拾Java(问题二:缺类异常,无法编译)
查看>>
C# 流总结(Stream)
查看>>
【综述】植物防御假说——Out of the quagmire of plant defense hypotheses
查看>>
C++——动态分配内存问题
查看>>
CSS3属性之圆角效果——border-radius属性
查看>>
API 数据缓存(本地缓存)
查看>>
r and r studio Settings
查看>>
Mysql 数据库安装
查看>>
mongodb备份还原脚本
查看>>
多线程与静态代理
查看>>
php跳转网络连接
查看>>
设置链接的样式
查看>>
大数据环境安装部署步骤
查看>>
MySQL处理约束的方式
查看>>
Git & GitHub
查看>>
codeforces B. Shower Line 解题报告
查看>>
c# winform 关于DataGridView的一些操作(很全,绝对够用)
查看>>
数值数据与字符串数据
查看>>
接口测试的一个正常取值的实例
查看>>
SaltStack--使用salt-ssh
查看>>