如何使用 MySQL 的 find_in_set() 函数精确匹配包含特定值的字段?

如何使用 mysql 的 find_in_set() 函数精确匹配包含特定值的字段?

精确匹配包含特定值的字段

可以使用 mysql 的 find_in_set() 函数,以确定某个字段的值是否包含指定的子字符串。这对于查找包含逗号分隔值的字段特别有用,因为模糊查询无法准确匹配这些值。

使用 find_in_set() 查询

要使用 find_in_set() 函数,语法如下:

select * from 表名 where find_in_set(子字符串, 字段名) > 0

其中:

  • 子字符串 是要查找的特定值。
  • 字段名 是要搜索的字段名称。

应用于你的问题

在你的示例中,可以使用 find_in_set() 函数以数字 35 为目标查找 ids 字段:

SELECT * FROM 表名 WHERE FIND_IN_SET(35, ids) > 0

该查询将返回所有 ids 字段包含子字符串 "35" 的行,并且只包含符合条件 "34,35,36,37" 的行,而不包含 "350" 行。

以上就是如何使用 MySQL 的 find_in_set() 函数精确匹配包含特定值的字段?的详细内容,更多请关注其它相关文章!