文章详情页
Mysql 有啥方法 能够查询 一个串在另一个串里面
浏览:231日期:2022-06-06 18:32:28
问题描述
Mysql 有啥方法 能够查询 例如 '3,5' 这个串, 是在 '3,4,5,2'串 内
情况 大概是这个
用户有多个属性, 属性ID是在用户表 用一个字段存储
如user_attr,值存储格式为:'3,4,5,2',
解释下:例如 数字就是 属性ID
现在前端需要查询 同时具有多个属性的用户
如 前端传过来需要查询的属性ID格式为 : '3,5' ,字符串的格式
我该怎么写查询呢,我用的thinkphp5, <<in,like 这些我试过都不行>>
问题解答
回答1:find_in_set() 了解下
回答2:like正解回答3:这里不需要用sql查询,将前端传递来的3,5 转为数组[3,5] ,然后 3,4,5,2也转为数组,对比一下就知道在不里面了
回答4:把3,5转换为数组,循环拼接where条件,user_attr like '%3%' or user_attr like '%5%' groug by 用户id呢?可能效率没有那么高,可以实现
相关文章:
1. javascript - 微信小程序 如何实现这种左滑动出现删除的办法?有相关api吗?2. python打开.py文件的时候出现window无法打开该文件是怎么回事呢?3. 关docker hub上有些镜像的tag被标记““This image has vulnerabilities””4. dockerfile - 为什么docker容器启动不了?5. javascript - swiper插件loop模式下的BUG?6. docker gitlab 如何git clone?7. docker 17.03 怎么配置 registry mirror ?8. javascript - sublime快键键问题9. mysql插入文本如果是个sql语句就报错了10. java - 单例服务解决多进程写文件
排行榜

网公网安备