sql某个字段值的一部分=某个值,这怎么写?用like筛选出来的会有很多不对的记录

junjunjest2 2017-03-17 12:48:38
我有一个表,字段如下:
ID StuID
1 1,12,22,32,33
2 2,23,24,25,34
3 1,2,13,14,15,17,21,22

如果用 StuID like '%2%' ,那么3条记录都会被找到;
或者用 StuID like '%2,%' ,那么1、2条记录会被找到;
我现在只想把第2条记录找出来,只想找到其值等于2的找到,这个语句该怎么写呢?

我查询语句最终用在ASP的页面里。
...全文
607 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
hookee 2019-10-23
  • 打赏
  • 举报
回复
引用 4 楼 junjunjest2 的回复:
[quote=引用 2 楼 bug810 的回复:] 给你补个代码吧
WHERE     (',' + 字段名 + ',' LIKE '%,2,%')
你这个不行吧, 2 2,12,11 比如这样的字段值,那就搜索不出来了。 因为没有哪个2前面有逗号的 [/quote] 搜的出来啊, ',' + 字段名 + ',' 就是在 2,12,11 前面加逗号, 变成 ,2,12,11, 了
hrr_wait 2019-10-22
  • 打赏
  • 举报
回复
where substr(stuid,1,1)='2'
junjunjest2 2019-10-10
  • 打赏
  • 举报
回复
引用 2 楼 bug810 的回复:
给你补个代码吧
WHERE     (',' + 字段名 + ',' LIKE '%,2,%')


你这个不行吧,
2 2,12,11
比如这样的字段值,那就搜索不出来了。
因为没有哪个2前面有逗号的
bug810 2017-03-17
  • 打赏
  • 举报
回复
给你补个代码吧
WHERE     (',' + 字段名 + ',' LIKE '%,2,%')
bug810 2017-03-17
  • 打赏
  • 举报
回复
哈,这个问题我也遇到过,很简单哦,还是要用到like查询,给字段值前后各加一个,然后不要'%2,%',要'%,2,%'

28,390

社区成员

发帖
与我相关
我的任务
社区描述
ASP即Active Server Pages,是Microsoft公司开发的服务器端脚本环境。
社区管理员
  • ASP
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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