Mysql 查询一个以逗号(,)分割的字符串,精确查找和模糊查询

需求描述

数据库有一个字段存储,一个商户下拥有的权限。每个有权限呢你,用逗号分隔符隔开。比如:service_code:"1,2,3,4,5,6,7,11,12,9,10,8",我需要查询商户下 service_code 含有 8 的商户。


尝试 like

用 like 模糊查询,这样会把 含有 8 的所有数据都查出来,数据不准确。

 

 

尝试用 find_in_set 函数

用 find_in_set 能够准确查出 service_code 中含有 8 这项

 

 

尝试用 mysql 的正则表达式

mysql 的正则表达式也能够查询出来,特别对于,查询条件是商品名称,商品名称呢是以逗号分割的多个关键字组成。如:goods_desc : "苹果,苹果摄像头,appple"

 

 #### 尝试用 mysql 的LOCATE 函数
这个函数,会把你查询出含有查找内筒的数据

 

posted @ 2020-12-03 12:26  浅笑19  阅读(5218)  评论(0编辑  收藏  举报