MySQL FIND_IN_SET() 函数使用指南
MySQL FIND_IN_SET() 函数返回字符串在一个逗号分隔的字符串列表中的索引。 FIND_IN_SET() 函数与 FIELD() 函数类似,不同的是 FIELD() 中的列表是由多个参数组成的,并且参数的类型也不一定是字符串。
FIND_IN_SET() 语法
这里是 MySQL FIND_IN_SET() 函数的语法:
FIND_IN_SET(string, string_list)
参数说明
string- 必须的。这是要搜索的字符串。
string_list- 必须的。这是一个使用逗号分隔的字符串列表。
返回值
- 如果在
string_list找到string,FIND_IN_SET()函数将返回对应的位置索引。 - 如果在
string_list中找不到string,则FIND_IN_SET()函数将返回0。 - 如果
string为NULL,FIND_IN_SET()函数将返回NULL。 - 如果
string_list为空字符串,则FIND_IN_SET()函数将返回0。 - 如果
string_list为NULL,则FIND_IN_SET()函数将返回NULL。
FIND_IN_SET() 示例
SELECT
FIND_IN_SET('A', 'A,B,C'),
FIND_IN_SET('D', 'A,B,C'),
FIND_IN_SET('D', ''),
FIND_IN_SET(NULL, 'A,B,C'),
FIND_IN_SET('D', NULL)\G
*************************** 1. row ***************************
FIND_IN_SET('A', 'A,B,C'): 1
FIND_IN_SET('D', 'A,B,C'): 0
FIND_IN_SET('D', ''): 0
FIND_IN_SET(NULL, 'A,B,C'): NULL
FIND_IN_SET('D', NULL): NULL
1 row in set (0.00 sec)