在SQL Server中使用listagg

时间:2013-09-27 13:51:10

标签: oracle

我对此主题ListAGG in SQLSERVER

有同样的问题

我的问题是如果我想要一个结果我应该怎么做:

1 | A, B
2 | A

1 个答案:

答案 0 :(得分:0)

从您显示的示例中,只需在DISTINCT子句中添加逗号,然后将STUFF函数start参数更改为1:

select distinct t1.FieldA,
  STUFF((SELECT distinct ',' + t2.FieldB
         from yourtable t2
         where t1.FieldA = t2.FieldA
            FOR XML PATH(''), TYPE
            ).value('.', 'NVARCHAR(MAX)') 
        ,1,1,'') data
from yourtable t1;