1.LOCATE函数

LOCATE(substr,str)  返回子串 substr 在字符串 str 中第一次出现的位置。如果子串 substr 在 str 中不存在,返回值为 0。如果substr或str为NULL,则返回NULL。(从1开始)。

SRE实战 互联网时代守护先锋,助力企业售后服务体系运筹帷幄!一键直达领取阿里云限量特价优惠。

例如:

  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

 

参考:https://blog.csdn.net/csdn_0_001/article/details/79497228

   https://blog.csdn.net/lanmuhhh2015/article/details/79216804

扫码关注我们
微信号:SRE实战
拒绝背锅 运筹帷幄