ID value
3 1
3 2
3 3
3 4
3 5
3 6
任何人都可以帮我将此表转换为格式:
ID Value
3 1,2,3,4,5,6
答案 0 :(得分:1)
select distinct id,
stuff((select (','+[value]) from Table1 as t2 where t1.id=t2.id
for xml path('')),1,1,'') as [values]
from
Table1 as t1
PS:在示例方案中,值为varchar()
类型,如果需要,您需要将数字转换为varchar()。
在Sql Server中有很多变体来制作group_concat,只是另一种使用汇编的方式:GROUP_CONCAT string aggregate for SQL Server。我觉得工作非常好。
COALESCE
DECLARE @values varchar(100)
SELECT @values = COALESCE(@values + ', ', '') + [value]
FROM Table1
SELECT @values