如何使用表列中的 SELECT 语句创建逗号分隔列表

Bri*_*esh -1 sql sql-server

提前致谢。

我有一个像这样的值的表

class_id Instructor_Name

———————————

1 Joe 

2 Joe 

3 Joe 

1 Judy 

2 Judy 

2 Kevin 

3 Kevin 
Run Code Online (Sandbox Code Playgroud)

我想要这样的结果集使用 SQL 语句:

id name services (I want)

———————————–

1 Joe, Judy

2 Joe, Judy, KevinC

3 Joe, Kevin
Run Code Online (Sandbox Code Playgroud)

我怎样才能得到这个

谢谢,布里杰什

Gur*_*ngh 6

使用STUFFFOR XML PATH相关子查询:

select 
    class_id,
    stuff(
        (select ', ' + Instructor_Name from your_table b 
         where a.class_id = b.class_id for xml path('')),
        1, 2, ''
    ) names
from your_table a
group by
    class_id;
Run Code Online (Sandbox Code Playgroud)