我的桌子是这样的:
id name
1 jid1
1 jid2
2 jid1
2 jid3
如何获得匹配的ID值,在上表jid1,jid2
中具有相同的id
和jid1,jid3
具有另一个相同的ID值。
如何获取这些匹配的记录?我需要如何为此编写查询?
预期输出:
id name
1 jid1,jid2
2 jid1,jid3
答案 0 :(得分:3)
您可以使用FOR XML
执行此操作,如下所示:
SELECT
t1.Id,
STUFF((
SELECT ', ' + t2.name
FROM Tablename t2
WHERE t2.ID = t1.ID
FOR XML PATH (''))
,1,2,'') AS Name
FROM Tablename t1
GROUP BY t1.Id;