首页 > 解决方案 > 在 SQL Server 中更改 FOR XML PATH 生成的列名

问题描述

我正在使用该FOR XML PATH函数将多列连接成一行。但是,我不知道如何为结果表的列名取别名。

这是 SQL 查询:

SELECT Comment
FROM Comments
WHERE ID = 1006
FOR XML PATH('')

我尝试了以下两种生成错误消息的方法:

SELECT Comment
FROM Comments
WHERE ID = 1006
FOR XML PATH('') [Comment_Agg];

SELECT * AS Comment_Agg
FROM
    (SELECT Comment
     FROM Comments
     WHERE ID = 1006
     FOR XML PATH(''));

仅供参考,我正在使用 SSMS 18。

标签: sql-serverssmsfor-xml-path

解决方案


我搜索了更多,发现解决方案如下:

SELECT SUBSTRING(
(
SELECT Comment
FROM Comments
WHERE ID = 1006
FOR XML PATH('')
),1,999999) AS Comment_Agg

推荐阅读