获取表示连续列值的键值对结果集的最佳方法是什么?
给出下面的表A只有1行
Column1 Column2 Column3 ...
Value1 Value2 Value3
Run Code Online (Sandbox Code Playgroud)
我想查询它并插入另一个表B:
Key Value
Column1 Value1
Column2 Value2
Column3 Value3
Run Code Online (Sandbox Code Playgroud)
表A中的一组列事先不知道.
注意:我正在查看FOR XML和PIVOT功能以及动态SQL来执行以下操作:
DECLARE @sql nvarchar(max)
SET @sql = (SELECT STUFF((SELECT ',' + column_name
FROM INFORMATION_SCHEMA.COLUMNS
WHERE table_name='TableA'
ORDER BY column_name FOR XML PATH('')), 1, 1, ''))
SET @sql = 'SELECT ' + @sql + ' FROM TableA'
EXEC(@sql)
Run Code Online (Sandbox Code Playgroud)