MySQL 的 FIND_IN_SET() 函数用于查找一个值是否存在于一个以逗号分隔的字符串列表中。如果该值存在,则函数返回其在字符串列表中的位置,否则返回 0。
下面是 FIND_IN_SET() 函数的语法:
FIND_IN_SET(value, string_list)
其中,value 是要查找的值,string_list 是以逗号分隔的字符串列表。例如:
SELECT FIND_IN_SET('apple', 'apple,banana,orange') -- 输出 1
SELECT FIND_IN_SET('pear', 'apple,banana,orange') -- 输出 0
需要注意的是,FIND_IN_SET() 函数不区分大小写。如果要区分大小写,则可以使用 BINARY 关键字来强制区分大小写,如下所示:
SELECT FIND_IN_SET('Apple', BINARY 'apple,Banana,Orange') -- 输出 0
SELECT FIND_IN_SET('Banana', BINARY 'apple,Banana,Orange') -- 输出 2