84669 人学习
152542 人学习
20005 人学习
5487 人学习
7821 人学习
359900 人学习
3350 人学习
180660 人学习
48569 人学习
18603 人学习
40936 人学习
1549 人学习
1183 人学习
32909 人学习
Mysql 有啥方法 能够查询 例如 '3,5' 这个串, 是在 '3,4,5,2'串 内
情况 大概是这个
用户有多个属性, 属性ID是在用户表 用一个字段存储
如user_attr,值存储格式为:'3,4,5,2',
解释下:例如 数字就是 属性ID
现在前端需要查询 同时具有多个属性的用户
如 前端传过来需要查询的属性ID格式为 : '3,5' ,字符串的格式
我该怎么写查询呢,我用的thinkphp5, <<in,like 这些我试过都不行>>
find_in_set() 了解下
喜欢正确答案
这里不需要用sql查询,将前端传递来的3,5 转为数组[3,5] ,然后 3,4,5,2也转为数组,对比一下就知道在不里面了
把3,5转换为数组,循环拼接where条件,user_attr like '%3%' or user_attr like '%5%' groug by 用户id呢?可能效率没有那么高,可以实现
find_in_set() 了解下
喜欢正确答案
这里不需要用sql查询,将前端传递来的3,5 转为数组[3,5] ,然后 3,4,5,2也转为数组,对比一下就知道在不里面了
把3,5转换为数组,循环拼接where条件,user_attr like '%3%' or user_attr like '%5%' groug by 用户id呢?可能效率没有那么高,可以实现