SQL查询字段中有逗号分隔的多数据字符串

本文介绍了一种使用SQL查询特定项目中涉及人员的方法。通过联表查询和字符串拼接函数实现从两个表中获取并整理出每个项目参与者的名单。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

记录一下 :

举个例,大概是下面这样的结构
       表A                                                     表B
ID     NAME                                        项目     人员
1        张三                                            A           2,3
2        李四                                            B          1,3 
3        王二                                            C           2
需要查询得出的效果
项目     人员
A         李四,王二
B         张三,王二
C         李四

select b.项目,
       stuff((select ','+a.name 
              from 表A a 
              where ','+ b.人员 +',' like '%,'+cast(a.id as varchar(10))+',%' for xml path('') ),1,1,'') as 人员
from 表B b

 

/*

项目    人员

A    李四,王二

B    张三,王二

C    李四

*/

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值