JZTXT
  • 首页
  • Ai
  • Java
  • Python
  • Android
  • Mysql
  • JavaScript
  • Html
  • CSS

Mysql高级查询

发布时间 2023-06-05 16:02:37作者: 橙子与柠檬

有表如下;
id cate
1 1,2,3
2 1,5,6
3 2,4,5
4 3,5,6

cate是逗号分隔的字符串

目的查出 cate in (1,3,6)的记录

where('cate','in',[1,3,6])
这样写结果不对
find_in_set 只能查cate包含3的,不是我们想要的结果
select * from A where find_in_set('3', ‘cate’);

解决方案
/******************************/
使用原生查询解决
SELECT * FROM table WHERE CONCAT(",", `cate`, ",") REGEXP ",(1|2|3),"
/*****************************/

    本栏目推荐文章
  • Jmeter 如何连接mysql数据库?
  • 如何通过Navicat把MySQL远程数据库导入到本地数据库
  • 【LeetCode 2701. 连续递增交易】MySQL用户变量编程得到严格递增连续子序列的开始位置,结束位置,长度等统计信息
  • 【Leetcode 2474. 购买量严格增加的客户】MySQL用户变量编程解决严格递增连续子序列问题
  • mysql发生连接异常Cause: com.mysql.jdbc.exceptions.jdbc4.CommunicationsException: Communications link failure
  • 【LeetCode 2494. 合并在同一个大厅重叠的活动】MySQL用户变量编程解决区间合并问题
  • 如何处理Mysql死锁
  • 【LeetCode1747. 应该被禁止的 Leetflex 账户】MySQL用户变量编程;尝试维护一个multiset
  • Mysql时间常用函数
  • 【Leetcode1949. 坚定的友谊】使用MySQL在无向图中寻找{"CompleteTripartite", {1, 1, 3}}这个pattern
版权声明:本网站为非赢利性站点,本网站所有内容均来源于互联网相关站点自动搜索采集信息,相关链接已经注明来源。
联系我们