-1

我有下表

身份证 | dw码| 公关号 |
----------------------
1 DW001 PR001
2 DW001 PR002

我需要以下结果:

dw码| 公关号 |
----------------------
DW001 PR001,PR002

有没有什么捷径可以使用 MS SQL Server 2005 转换这样的数据?

4

1 回答 1

4

您可以使用FOR XML来执行此操作:

SELECT 
  t1.dwCode,
  STUFF((
    SELECT ', ' + t2.PRNo
    FROM Table1 t2
    WHERE t2.dwCode   = t1.dwCode
    FOR XML PATH (''))
  ,1,2,'') AS PRNo
FROM Table1 t1
GROUP BY t1.dwCode;

在这里查看它的实际效果:

于 2013-08-21T08:41:58.637 回答