SQLServer之列数据转换为行数据
UNPIVOT特点
UNPIVOT运算符通过将列旋转到行来执行PIVOT的反向操作,UNPIVOT 并不完全是 PIVOT 的逆操作。 PIVOT 执行聚合,并将多个可能的行合并为输出中的一行。UNPIVOT 不重现原始表值表达式的结果,因为行已被合并。 另外,UNPIVOT 输入中的 NULL 值也在输出中消失了。如果值消失,表明在执行 PIVOT 操作前,输入中可能就已存在原始 NULL 值。
语法
select 输出列名,...,输出列名,输出值列名称
from (select 输出列名,...,转换列列名,... from 数据库名.架构名.表名) as 别名
unpivot(
输出值列名称 for 输出列名 in
(转换列列名,...)
) as 别名
示例
select unpriots.Name,unpriots.Course,unpriots.Score
from (select Name,Android,[.NET],IOS,HTML5 from test1.dbo.student2) as a
unpivot(
Score for Course in
(Android,[.NET],IOS,HTML5)
) as unpriots
原文地址https://www.cnblogs.com/vuenote/archive/2019/08/11/11336793.html
继续阅读与本文标签相同的文章
上一篇 :
阿里云官方推荐购买云服务器配置整理
下一篇 :
阿里云可以享受2折起优惠的活动有哪些
-
TCP接入层的负载均衡、高可用、扩展性架构
2026-05-20栏目: 教程
-
用uid分库,uname上的查询怎么办?
2026-05-20栏目: 教程
-
到底什么时候该使用MQ?
2026-05-20栏目: 教程
-
阿里云 CDN+Oss 解决方案
2026-05-20栏目: 教程
-
买了一台云服务器到底能干什么?
2026-05-20栏目: 教程
