一、LOCATE函数
1、LOCATE函数是mysql中获取字符串位置的函数,它可以获得一个字符串在另一个字符串中第一次出现的位置。
2、LOCATE函数的语法如下:
LOCATE(substr,str,pos)
其中,substr是要查找的字符串;str是待查找的目标字符串;pos是可选参数,指定从目标字符串的哪个位置开始查找。如果省略pos,则从目标字符串的首个字符开始查找;如果指定了pos,则从该位置开始查找。如果substr在str中不存在,返回0。
3、下面是一个使用LOCATE函数的实例:
SELECT LOCATE('world','hello world!'); --返回7
二、INSTR函数
1、INSTR函数与LOCATE函数类似,也可以获得一个字符串在另一个字符串中第一次出现的位置。
2、INSTR函数的语法如下:
INSTR(str,substr)
其中,str是待查找的目标字符串;substr是要查找的字符串。如果substr在str中不存在,返回0。
3、下面是一个使用INSTR函数的实例:
SELECT INSTR('hello world!','world'); --返回7
三、SUBSTRING_INDEX函数
1、SUBSTRING_INDEX函数可以获得一个字符串在另一个字符串中第N次出现的位置。
2、SUBSTRING_INDEX函数的语法如下:
SUBSTRING_INDEX(str,delim,count)
其中,str是待查找的目标字符串;delim是分隔符,表示要分割的字符串;count是可选参数,表示分割的次数,取正数表示从前往后分割,取负数表示从后往前分割。如果count省略,函数默认返回第一个分割的子串。
3、下面是一个使用SUBSTRING_INDEX函数的实例:
SELECT SUBSTRING_INDEX('www.taobao.com.cn','.com',-2); --返回'taobao'
四、REGEXP函数
1、REGEXP函数可以使用正则表达式在目标字符串中查找匹配的字符串。
2、REGEXP函数的语法如下:
expr REGEXP pat
其中,expr是待匹配的目标字符串;pat是正则表达式。如果有匹配,函数返回1;否则返回0。
3、下面是一个使用REGEXP函数的实例:
SELECT 'hello world' REGEXP '^he.*d$'; --返回1
五、CONCAT函数
1、CONCAT函数可以将多个字符串拼接成一个字符串。
2、CONCAT函数的语法如下:
CONCAT(str1,str2,...,strn)
其中,str1~strn是要拼接的字符串。如果其中有一个字符串为NULL,则函数返回NULL。
3、下面是一个使用CONCAT函数的实例:
SELECT CONCAT('goodbye',' ','world','!'); --返回'goodbye world!'
六、CONCAT_WS函数
1、CONCAT_WS函数可以将多个字符串使用指定分隔符拼接成一个字符串。
2、CONCAT_WS函数的语法如下:
CONCAT_WS(delim,str1,str2,...,strn)
其中,delim是分隔符;str1~strn是要拼接的字符串。如果其中有一个字符串为NULL,则函数忽略这个字符串。
3、下面是一个使用CONCAT_WS函数的实例:
SELECT CONCAT_WS(' ','hello','world',NULL,'!'); --返回'hello world !'