MySQL查字符串位置函数
MySQL 查字符串位置函数
注意:本⽂MySQL版本为5.7
1、INSTR(str,substr)
返回字符串str中第⼀次出现⼦字符串substr的位置,没有则返回0。
select instr('zcxvsd1sa','b');-- 0
select instr('zcxvsd1sa','s');-- 5
select instr('zcxvsd1sa',1);-- 7
2、LOCATE(substr,str), LOCATE(substr,str,pos)
LOCATE(substr,str):返回字符串str中第⼀次出现⼦字符串substr的位置,没有则返回0。
LOCATE(substr,str,pos):从pos位置开始返回字符串str中第⼀次出现⼦字符串substr的位置,没有则返回0。
select locate('s','zcxvsd1sa',-1);-- 0mysql下载的vs库放在那个文件里
select locate('s','zcxvsd1sa',-3);-- 0
select locate('s','zcxvsd1sa',0);-- 0
select locate('s','zcxvsd1sa',1);-- 5
select locate('s','zcxvsd1sa',5);-- 5
select locate('s','zcxvsd1sa',6);-- 8
select locate('s','zcxvsd1sa');-- 5
select locate(1,'zcxvsd1sa');-- 7
locate()函数不⽀持起始位负数的查询,即⽆法从尾部向头部查询。
但可以配合REVERSE(str)反转函数实现从从尾部向头部查询。
3、POSITION(substr IN str)
返回字符串str中第⼀次出现⼦字符串substr的位置,没有则返回0。
⽤法同LOCATE(substr,str)。

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。