mysql 以逗号分割的字符 按指定字符进行查询
如图数据库中的字符如下:

现在要根据给定的字符串进行查询,如查找audit_id中包含:2951709287022721的数据,这时可以用 FIND_IN_SET 函数进行查询
sql如下:
SELECT s.audit_id FROM SUPPLIER s WHERE FIND_IN_SET ('2951709287022721',s.audit_id)
结果如下:

至此查出我们想要的结果。
FIND_IN_SET(needle,haystack); 函数说明:
允许您在逗号分隔的字符串列表中查找指定字符串的位置,
- 第一个参数
needle是要查找的字符串。 - 第二个参数
haystack是要搜索的逗号分隔的字符串列表
根据参数的值返回一个整数或一个NULL值:
- 如果
needle或haystack为NULL,则函数返回NULL值。 - 如果
needle不在haystack中,或者haystack是空字符串,则返回零。 - 如果
needle在haystack中,则返回一个正整数。

浙公网安备 33010602011771号