使用SQL Server将选定的列透视成行

时间:2019-08-23 19:39:56

标签: sql-server

我有一个基于列的表,如下所示:

Column-Based Table

我需要将其转换为基于行的表,如下所示:

Row-Based Table

任何帮助将不胜感激。

1 个答案:

答案 0 :(得分:0)

我认为您需要一个UNPIVOT-

SELECT OrgID, Property, DataValue
FROM (SELECT OrgID, Property, DataValue
      FROM YOUR_TABLE
      UNPIVOT
      (
            DataValue FOR Property IN (ExtensionDigits
                                      ,StartExtension
                                      ,LastUsedExtension
                                      ,Server1IP
                                      ,Server2IP
                                      ,ServerPort
                                      ,IsFunctionOn
                                      ,VolumeDecibel)
      ) unpvt) temp
WHERE DataValue IS NOT NULL;