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