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)