1、LOCATE(substr,str) , LOCATE(substr,str,pos)
第一个语法返回字符串 str中子字符串substr的第一个出现位置。第二个语法返回字符串str中子字符串substr的第一个出现位置, 起始位置在pos。如若substr 不在str中,则返回值为0。
SELECT LOCATE("a","A") locate;-- 注意:该函数不区分大小写SELECT LOCATE('bar', 'foobarbar') locate;
SELECT LOCATE('xbar', 'foobar') locate;-- 未找到值
SELECT LOCATE('bar', 'foobarbar',5) locate;
SELECT LOCATE(null, 'foobarbar',5) locate;-- 当某个参数为null,则返回NULL
结果分别为:
2、FIND_IN_SET(str,strlist)
假如字符串str 在由N 子链组成的字符串列表strlist 中, 则返回值的范围在 1 到N 之间 。一个字符串列表就是一个由一些被‘,’符号分开的自链组成的字符串。如果第一个参数是一个常数字符串,而第二个是type SET列,则 FIND_IN_SET() 函数被优化,使用比特计算。如果str不在<