Mysql 查询逗号分隔字符串包含某个

编程教程 > Java (2329) 2024-11-26 14:39:04
有些时候为了方便,会把多个值存在一个字段里面,然后用逗号分隔。

例如关联了另外一个表的id,但是是1个对应多个,这个时候数据库字段值就会存以下格式
1,2,3,11,12

这个时候有个问题来了,我要查询这个字段里面是否包含1,如果用like查询
SELECT * FROM table_name WHERE ids like "%1%";
这样查询会把 11,12都查出来,不是我们想要的效果

解决办法

利用mysql 字符串函数 find_in_set();
 
SELECT * FROM table_name WHERE find_in_set('1', ids);

要注意的是:mysql字符串函数 find_in_set(str1,str2)函数是返回str2中str1所在的位置索引,str2必须以","分割开。



 

评论
User Image
提示:请评论与当前内容相关的回复,广告、推广或无关内容将被删除。

相关文章
有些时候为了方便,会把多个值存在一个字段里面,然后用逗号分隔
Mysql FIND_IN_SET查询逗号分割字段某些情况下,我们存储的字符内容是以逗号分割多个内容的,例如下面的标签:这时候我们要查询tags包含骑行的记录,错误做法:(like 实现字符串包...
MySQL慢查询优化_MySQL慢查询排查_MySQL慢查询设置配置
在导入sql备份文件到MySQL数据库中,无论物理机安装MySQL还是docker环境安装的MySQL,思路是一样的。首先,登录进入MySQL如果是物理的,则直接执行命令mysql-u-p&gt...
MySQL查询结果添加序号常规查询结果如下:SQL命令:SELECT * FROM test;​现在我们需要添加一行序列号,也就是1,2,3,4...那种
案例问题描述有这么一个SQL,外查询 where 子句的 bizCustomerIncoming_id 字段,和子查询 where 字句的 cid 字段都有高效
MySQL索引优化,MySQL索引类型,MySQL索引怎么用MySQL索引怎么创建这里将会通过一些简单得sql进行讲解
函数使用mysql&gtl; explain SELECT a.custid, b.score, b.xcreditscore, b.lrscore FROM(SELE
MySQL查询中null转0
MySQL分页_MySQL分页语句_MySQ如何使用limit分页,本博客将会详细讲解mysql中的分页查询。讲清楚MySQL如何编写分页查询语句。
mysql 使用utf8mb4字符集后查询非常慢的解决办法
ExtraExtra 是 EXPLAIN 输出中另外一个很重要的列,该列显示MySQL在查询过程中的一些详细信息类型说明Using filesortMySQL有
mysql索引的使用基础知识摘录。
1 Mysql   union  语法 mysql   union 用于把来自多个select  语句的结果组合到一个结果集合中。语法为:   select column,......f...
MySQL,从大概5.7版本开始支持json数据类型,但是5.7的json查询不支持创建索引,在MySQL 8.0.17 后支持了索引,但是创建和查询使用索引与常规索引不同