我有一个包含以下字段和示例数据的SQL Server表:
ID employeename 1 Jane 2 Peter 3 David 4 Jane 5 Peter 6 Jane
该ID列的每一行都有唯一的值。
ID
该employeename列有重复项。
employeename
我希望能够根据该employeename列查找重复项,并在ID其旁边列出重复项的s,并以逗号分隔。
以上样本数据的预期输出:
employeename IDs Jane 1,4,6 Peter 2,5
表中还有其他列我不想考虑此查询。
感谢你的帮助!
select employeename, IDs = STUFF((SELECT ','+ CAST(e2.[ID] AS VARCHAR(10)) FROM emp e2 WHERE e2.employeename = e1.employeename For XML PATH('') ),1,1,'') FROM emp e1 GROUP BY employeename having COUNT(*) > 1
SQL提琴手