请问ms sql server有没有这种功能的函数或是sql语句实现

qq_22264283 2024-10-25 11:44:52

我的版本是2014

原始数据如下:

ID  val

1  A
1  B
2  C
2   D
2   f

查询返回结果:
1   a,b
2   c,d,f

...全文
107 2 打赏 收藏 转发到动态 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
雨夹雪 10-25
  • 打赏
  • 举报
回复 1
--sql2017开始有函数string_agg,2014的话,可以用这个for xml path
CREATE table #T
(
ID INT,
val VARCHAR(100)
) 


INSERT INTO #T VALUES(1 ,'A')
INSERT INTO #T VALUES(1 ,'B')
INSERT INTO #T VALUES(2 ,'C')
INSERT INTO #T VALUES(2 ,'D')
INSERT INTO #T VALUES(2 ,'f')


SELECT id,STUFF((SELECT ','+val  FROM #T WHERE id=a.id FOR  XML PATH('')),1,1,'') AS val
FROM #T a
GROUP  BY id
  • 举报
回复
@雨夹雪 谢谢

34,696

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server相关内容讨论专区
社区管理员
  • 基础类社区
  • 二月十六
  • 卖水果的net
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧