Azure DW は変数の割り当てをサポートFOR XML
していないSELECT
ため、複数の行を単一の行に変換する方法はありますCURSOR
か?
質問する
1998 次
1 に答える
3
直接的な方法は見つかりませんでしたが、以下のコードが機能しています。
DECLARE @intColumnCount INT,
@intProcessCount INT,
@varColList VARCHAR(max)
SET @varColList = ''
IF Object_id('tempdb.dbo.#tempColumnNames') IS NOT NULL
BEGIN
DROP TABLE #tempcolumnnames;
END
CREATE TABLE #tempcolumnnames
(
intid INT,
varcolumnnames VARCHAR(256)
)
INSERT INTO #tempcolumnnames
SELECT Row_number()
OVER (
ORDER BY NAME),
NAME
FROM sys.tables
SET @intProcessCount = 1
SET @intColumnCount = (SELECT Count(*)
FROM #tempcolumnnames)
WHILE ( @intProcessCount <= @intColumnCount )
BEGIN
SET @varColList = @varColList + ', '
+ (SELECT varcolumnnames
FROM #tempcolumnnames
WHERE intid = @intProcessCount)
SET @intProcessCount +=1
END
SELECT Stuff(@varColList, 1, 2, '')
これが誰かに役立つことを願っています。
于 2016-11-25T19:07:17.870 に答える