求一条关于查询的SQL语句

lyjsd 2007-05-31 08:30:16
表结构如下
ID AID PID
1 3,5,15,23 3,15
2 5,12,16,21 5,12
3 2,16,9,5,31 31
4 15,25,8,9,7 15,9

现要求查询AID中包含同时PID中不包含某个数字的所有记录。
例如要查询包含 5 的记录,要得到如下结果:
ID AID PID
1 3,5,15,23 3,15
3 2,16,9,5,31 31

只能针对 5 ,对15、25等数据中包含的 5 要忽略
...全文
182 2 打赏 收藏 转发到动态 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
lt1129 2007-05-31
  • 打赏
  • 举报
回复
rockyljt(江濤) 的没错
---涛声依旧--- 2007-05-31
  • 打赏
  • 举报
回复
declare @t table (ID int,AID varchar(20),PID varchar(20))
insert @t select
1 ,'3,5,15,23', '3,15' union all select
2 ,'5,12,16,21', '5,12' union all select
3 ,'2,16,9,5,31', '31' union all select
4 ,'15,25,8,9,7', '15,9'

select * from @t where charindex(',5,',','+AID+',')>0 and charindex(',5,',','+PID+',')=0
/*
結果:
ID AID PID
----------- -------------------- --------------------
1 3,5,15,23 3,15
3 2,16,9,5,31 31
*/

34,594

社区成员

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

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