sql – 将多行合并到一列而不重复

前端之家收集整理的这篇文章主要介绍了sql – 将多行合并到一列而不重复前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我正在处理一个查询,将从表中收集数据并显示报表的数据.

数据如下所示:

Player @R_502_182@
001      10
001      20
002      20
002      20
001      10
002      10
003      20
002      20
001      10

我想要这样显示

Player @R_502_182@
001    10,20
002    10,20
003    20

但是我得到的就是这样的分数列中的所有数据的组合列表

Player @R_502_182@
001    10,20,10,10
002    20,20
003    20

有没有人有一个想法如何使这项工作?

解决方法

对于sql Server,您可以使用:
select player,stuff((SELECT distinct ',' + cast(@R_502_182@ as varchar(10))
           FROM yourtable t2
           where t2.player = t1.player
           FOR XML PATH('')),1,'') 
from yourtable t1
group by player

猜你在找的MsSQL相关文章