用逗号分隔数据,

时间:2014-11-24 11:54:30

标签: sql sql-server-2008-r2

我有一张这样的桌子..

TicketID    Name   

111         ABC
111         DEF
222         GHI
333         ABC
333         GHI

我需要像这样的输出..

TicketID    Name   

111         ABC, DEF
222         GHI
333         ABC, GHI

我发现同样的查询尝试使用Stuff功能但是不知道为什么没有得到确切的结果 任何人都可以给我查询SQL Server .. n告诉我它是如何处理的。

1 个答案:

答案 0 :(得分:1)

hereherehere

SELECT 
  [TicketId],
  STUFF((
    SELECT ', ' + [Name]) 
    FROM [OneTable] 
    WHERE ([TicketId] = OT.[TicketId]) 
    FOR XML PATH(''),TYPE).value('(./text())[1]','VARCHAR(MAX)')
  ,1,2,'') AS Name
FROM [OneTable] OT
GROUP BY [TicketId]

去投票,然后关闭这个问题。