T-SQL枢轴?根据行值创建表格列的可能性

实际上是否可以旋转T-SQL(2005),以便(出于争论的目的)第一列的行的值成为输出表的列的标题?

我意识到这并不是PIVOT真正的目的,而是我所需要的-能够请求一个表的功能,这些列是事先不知道的,因为它们已经作为值输入到表中。

即使是骇客也很好,TBH。


jeck猫
浏览 525回答 2
2回答

蝴蝶刀刀

更好的数据透视查询如下:-- Static PIVOTWITH PivotData AS(SELECT custid, YEAR(orderdate) AS orderyear, qtyFROM dbo.Orders)SELECT custid, [2002], [2003], [2004]FROM PivotDataPIVOT(SUM(qty) FOR orderyear IN([2002],[2003],[2004])) AS P;我认为通用表表达式(CTE)的样式胜于派生表,因为我认为它更易于理解。Itzik也这样做,因为他在《查询Microsoft SQL Server 2012》一书中建议使用这种样式。
打开App,查看更多内容
随时随地看视频慕课网APP