sql – 将列表汇总为逗号分隔的字符串

前端之家收集整理的这篇文章主要介绍了sql – 将列表汇总为逗号分隔的字符串前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
这是当前可以每天更改的结果
(int)   (nvarchar)
    Number   Grade
    --------------
         1       a
         1       c
         2       a
         2       b
         2       c
         3       b
         3       a
@H_301_4@我需要帮助的是在下面实现这个结果.

Number      Grade
-----------------
     1       a,c
     2    a,b,c
     3       b,a

解决方法

使用:
declare @t table(Number int,Grade varchar)

insert @t values(1,'a'),(1,'c'),(2,'b'),(3,'a')

select t1.Number,stuff((
        select ',' + Grade
        from @t t2
        where t2.Number = t1.Number
        for xml path(''),type
    ).value('.','varchar(max)'),1,'') [values]
from @t t1
group by t1.Number

猜你在找的MsSQL相关文章