Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/sql-server/27.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Sql server 使用SQL Server将选定列透视到行中_Sql Server - Fatal编程技术网

Sql server 使用SQL Server将选定列透视到行中

Sql server 使用SQL Server将选定列透视到行中,sql-server,Sql Server,我有这样一个基于列的表: 我需要将其转换为一个基于行的表,如下所示: 任何帮助都将不胜感激。我想您需要一个UNPIVOT- SELECT OrgID, Property, DataValue FROM (SELECT OrgID, Property, DataValue FROM YOUR_TABLE UNPIVOT ( DataValue FOR Property IN (ExtensionDigits

我有这样一个基于列的表:

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


任何帮助都将不胜感激。

我想您需要一个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;

请以文本而不是图像的形式发布示例数据和预期输出。你也试过了吗?效果很好!谢谢你理解我试图完成的简单事情。我确实在UNPIVOT中遇到了INT和BIT转换的问题,但是我能够通过在SELECT语句中将结果转换为VARCHAR来解决这些问题。我是新手,但学得很快。再次感谢!