SQL数据透视表多列

时间:2018-01-23 23:56:32

标签: sql sql-server pivot

我有一个看起来像这样的表:

Title01    Title02     Title03       Title04        Title05
Number     Title       Division      Department     IFC

我想把列变成行,所以就像这样松散:

Field
Number
Title
Division
Department
IFC

是否可以使用SQL中的PIVOT函数执行此操作?

1 个答案:

答案 0 :(得分:1)

我喜欢使用CROSS APPLY

select v.field
from t cross apply
     (values (title01), (title02), (title03), (title04), (title05)
     ) v(field);

CROSS APPLY实现横向连接。您可以将其视为相关子查询的扩展 - 但子查询可以返回多个列和多个行。不插入数据恰好是对概念的简单介绍。