SQL Server 2005合并列成字符串 20081107

SQL Server 2005合并列成字符串 2008-11-07

如果要将数据中的某一列合并成字符串,形成 A,B,C 这样的格式的话,一般性代码如下

DECLARE @str nvarchar(4000)

SELECT @str = @str + Description + ',' FROM table
 WHERE 1 = 1

但,如果Description有相同的行,但又想过滤掉,绝对不可以写成

SELECT DISTINCT @str = @str + Description + ',' FROM table
 WHERE 1 = 1

这样只会取到最后一行的数据,而应该写成

SELECT @str = @str + Description + ',' FROM table
 WHERE 1 = 1
 GROUP BY Description

原文地址:https://www.cnblogs.com/soundcode/p/2540289.html