sql连接行

时间:2015-09-17 17:46:53

标签: sql sql-server tsql

我正在寻找一个SQL查询,它将在“下面的PartNumber”中找到所有值并连接。如果材料使用不同的销售组织列出多次,请使用逗号。我一直绞尽脑汁试图弄明白。我正在运行SQL 2008 R2

假设以下SQL表

PartNumber      Org
ABC             1
DEF             2
FGH             3
ABC             2
FGH             5

我的预期输出是:

PartNumber     Org
ABC            1,2
DEF            2
FGH            3,5

1 个答案:

答案 0 :(得分:0)

您可以使用XML PATH获得所需的结果。

SELECT PartNumber , STUFF(( SELECT  ','+ org FROM t1 a
WHERE b.PartNumber = a.PartNumber FOR XML PATH('')),1 ,1, '')  org
FROM t1 b
GROUP BY PartNumber;