gpt4 book ai didi

sql-server - Azure 数据仓库中的多行到单行

转载 作者:行者123 更新时间:2023-12-03 01:08:28 25 4
gpt4 key购买 nike

由于 Azure DW 不支持 FOR XMLSELECT变量赋值,除了使用 CURSOR 之外,还有其他方法可以将多行转换为单行吗? ?

最佳答案

我没有找到任何直接的方法,但是下面的代码对我有用。

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, '')

希望这对某人有帮助。

关于sql-server - Azure 数据仓库中的多行到单行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40810474/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com