我有一些像
这样的数据A B
1 ATH
1 FRA
1 PAR
2 ATH
3 PAR
3 FRA
我想采取像
这样的报告1 ATH, FRA, PAR
2 ATH
3 PAR, FRA
单个查询可以实现吗?
答案 0 :(得分:1)
使用Stuff将多行转换为逗号分隔值。
SELECT A
,STUFF((SELECT ', ' + CAST(B AS VARCHAR(10)) [text()]
FROM @Table1
WHERE A = t.A
FOR XML PATH(''), TYPE)
.value('.','NVARCHAR(MAX)'),1,2,' ') NewBColumn
FROM @Table1 t
GROUP BY A