文章详情页
Mysql 有啥方法 能够查询 一个串在另一个串里面
问题描述
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. 引用 node.js express加载 静态文件 报错 ??2. javascript - 引入 simditor,但是显示标签,这个怎么解决。3. angular.js - 全站用的angular,但是像下面描述的这样强交互的功能用angular该用什么思路去做呢?4. angular.js - 如何让图片遇到父容器边缘自动换行显示,不会溢出5. angular.js - 关于ui-sref地址栏缺省的问题6. angular.js - 在angular中,使用ng-repeat循环输出一个列表,然后节当中具体的一个参数值(是数值),然后整个循环节的值总数相加7. angular.js - 用ng serve运行一个angular2的项目,结果出错,运行不了?有没有朋友遇到过,告知一下怎么运行起来。8. android - 目前有哪些用Vue.js开发移动App的方案?9. angular.js - 学习ng路由模块遇到点击链接到锚点时URL后面多出个#!是怎么回事10. mysql - 这条sql可以怎么优化,求帮助
排行榜