问题 将许多行连接成一个文本字符串,并使用分组[duplicate]


这个问题在这里已有答案:


1748
2017-08-21 16:15


起源

请停止声明 varchar 没有长度。 - Aaron Bertrand
@Aaron Bertrand感谢您的链接。真的很酷的主题。 - Jasmina Shevchenko


答案:


尝试这个 -

SELECT DISTINCT
      fileid
    , STUFF((
        SELECT N', ' + CAST([filename] AS VARCHAR(255))
        FROM tblFile f2
        WHERE f1.fileid = f2.fileid ---- string with grouping by fileid
        FOR XML PATH (''), TYPE), 1, 2, '') AS FileNameString
FROM tblFile f1

14
2017-08-21 16:18



完善。谢谢。 - user1783736
我很高兴为你提供帮助:) - Jasmina Shevchenko
这非常有帮助! - codingManiac
我收到一个错误:参数数据类型xml对于stuff函数的参数1无效。 - Kris Khairallah
删除工作版本的TYPE参数。 TYPE使结果作为XML数据类型返回,但STUFF需要一个字符串。 - gxclarke