【发布时间】:2016-05-18 03:59:18
【问题描述】:
我正在使用 SQL Server 2008,并希望将我的数据转换为:
数据集:
ID Item Columns Result
1 1 X A
2 1 Y B
3 1 Z C
4 2 X D
5 2 Y E
6 2 Z NULL
7 3 X F
8 3 Y G
9 3 Z H
期望的结果:
Item X Y Z
1 A B C
2 D E NULL
3 F G H
此时,我正在做以下事情,然后将我需要的列粘贴到 Excel 中:
Select * from thisTable where Column=X
Select * from thisTable where Column=Y
Select * from thisTable where Column=Z
但是,并非所有匹配的行都不能只是并排敲击表格。对于没有结果的列,我希望显示 NULL 以填充行以使它们的记录数相同。
我查找了 PIVOT,但我认为这在这里不起作用……这种类型的数据转换叫什么?我不认为这是一个交叉表...
谢谢!
【问题讨论】:
-
我可以通过将此 SQL Server 报表生成器添加为列组来获得此结果,但我需要一个查询来执行此操作,而不是这次使用报表生成器...
标签: sql sql-server sql-server-2008