以下代码不起作用-
SELECT [LY-1],
LY = STUFF((SELECT ',' + name FROM temp1 FOR XML PATH ('')), 1, 1, '' )
FROM temp1
GROUP BY [LY-1];
由于出现以下错误-
消息103010,第16层,状态1,第73行 解析第2行,第36列的错误:“ temp1”附近的语法不正确。
STUFF和FOR XML不能正常工作数据仓库吗?还有其他选择吗?
答案 0 :(得分:0)
我认为等号并不起作用。假设LY是一个计算列,而不是表中已经存在的列,则查询应为:
SELECT [LY-1],
STUFF((SELECT ',' + name FROM temp1 FOR XML PATH ('')), 1, 1, '' ) AS LY
FROM temp1
GROUP BY [LY-1];
为使TSQL创建计算列,您始终首先使用逻辑,然后为列命名。