问一个IN相关的查询方法?
数据库表Project
id | name | user_id |
---|---|---|
1 | 跳远 | 1,2,3,4,6,8,12.... |
2 | 跳绳 | 21,43,13,14,26,38,92.... |
字段user_id保存着用户表user中的id
现在做了一个管理系统,用户登录进来的时候系统会保存该用户的id然后去查询该用户参加比赛的项目列表,如果参加了跳绳项目,就显示出跳绳选项。第一个想到的就是先循环出project这个表,然后看看这个用户id是否在这行user_id字段中?select * from project where $this->auth->id in user_id......结果发现不能这样写[$this->auth->id这个位置应该是user_id,前后颠倒],求解决方法
回复
1个回答

test
2024-07-01
如果不改变现状的话,有两种方法使用 1.FIND_IN_SET:例如查user_id为21的话,find_in_set(21,user_id)2.Like:例如查user_id为21的话,user_id like '21,%' or user_id like '%,21' or user_id like '%,21,%' or user_id=21
回复

适合作为回答的
- 经过验证的有效解决办法
- 自己的经验指引,对解决问题有帮助
- 遵循 Markdown 语法排版,代码语义正确
不该作为回答的
- 询问内容细节或回复楼层
- 与题目无关的内容
- “赞”“顶”“同问”“看手册”“解决了没”等毫无意义的内容