我是firewang,用技术让数据说话,用数据让你我进化
本文目录:
PIVOT语法
PIVOT示例
UNPIVOT语法
UNPIVOT示例
PIVOT和UNPIVOT
PIVOT 通过将表达式中的一个列的唯一值转换为输出中的多列(即行转列),来轮替表值表达式。PIVOT 在需要对最终输出所需的所有剩余列值执行聚合时运行聚合。与 PIVOT 执行的操作相反,UNPIVOT 将表值表达式的列轮换为行(即列转行)。
但是需要注意得是,UNPIVOT 并不完全是 PIVOT 的逆操作。PIVOT 执行聚合,并将多个可能的行合并为输出中的一行。UNPIVOT 不重现原始表值表达式的结果,因为行已被合并。
-- PIVOT 语法
SELECT ,
[第一个透视的列] AS ,
[第二个透视的列] AS ,
...
[最后一个透视的列] AS ,
FROM
()
AS
PIVOT
(
()
FOR
[]
IN ( [第一个透视的列], [第二个透视的列],
... [最后一个透视的列])
) AS
;
实例的数据使用的是和 SQL笔试50题同样的数据, 使用的平台是SQLFIDDLE(提供在线数据库),鉴于近期全球病情的影响&#x