1.LOCATE函数
LOCATE(substr,str) 返回子串 substr 在字符串 str 中第一次出现的位置。如果子串 substr 在 str 中不存在,返回值为 0。如果substr或str为NULL,则返回NULL。(从1开始)。
例如:
mysql> SELECT LOCATE('bar', ‘foobarbar');
-> 4
mysql> SELECT LOCATE('xbar', ‘foobar');
-> 0
LOCATE(substr,str,pos) 返回子串 substr 在字符串 str 中的第 pos 位置后第一次出现的位置。如果 substr 不在 str 中返回 0 。如果substr或str为NULL,则返回NULL。
mysql> SELECT LOCATE('bar', ‘foobarbar',5);
-> 7
2.POSITION函数
POSITION(substr IN str) 等价于 LOCATE(substr,str)。(两者用法完全一样)
3.INSTR函数
INSTR(str,substr) 返回字符串str中第一次出现子字符串substr的位置。 这与LOCATE()的双参数形式相同,只是参数的顺序相反。
示例:
1 SELECT position('a' IN 'banana'); # 2 2 SELECT locate('a', 'banana'); # 2 3 SELECT locate('a', 'banana', 3); # 4 4 SELECT locate('x', 'banana'); # 0 5 SELECT locate(1, 'banana'); # 0 6 SELECT locate(NULL , 'banana'); # null 7 SELECT locate('a' , NULL ); # null 8 SELECT instr('banana', 'a'); # 2 9 SELECT instr('banana', 'e'); # 0
继续阅读与本文标签相同的文章
-
《Android进阶解密》| 每日读本书
2026-05-18栏目: 教程
-
watchbog再升级,企业黄金修补期不断缩小,或面临蠕虫和恶意攻击
2026-05-18栏目: 教程
-
阿里巴巴资深技术专家雷卷:值得开发者关注的 Java 8 后时代的语言特性| 9月9号栖夜读
2026-05-18栏目: 教程
-
3年Java开发6个点搞定高并发系统面试疑惑
2026-05-18栏目: 教程
-
请求支援!我被“非结构化数据包围了” | 开发者必读(060期)
2026-05-18栏目: 教程
