我有一个名为 Forecast 的表,如下所示:
Product_BK 有大约 80,000 条记录,而月份有 12 条记录。各州保持不变,为 5 条。
如何编写查询来将数据转置为如下所示:
这是在 SQL 服务器上,不喜欢走动态查询路线。
感谢您的所有投入
最佳答案
您可以使用 SQL Server 的内置 UNPIVOT功能:
SELECT PRODUCT_BK, Month, State, Forecast
FROM
(SELECT * FROM Forecast_Table) t
UNPIVOT
(Forecast FOR State IN (SA_NT, QLD, VIC_TAS, WA, NSW_ACT)) AS fcst
关于sql-server - SQL转置数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40478749/