Mysql 模糊匹配(字符串str中是否包含子字符串substr)


1、LIKE         通常与 % 一同使用,类似于一个元字符的搜索。若substr不在str中,则返回0。
SELECT  'test' LIKE '%e%' as `ret`;  # 1
SELECT  'test' LIKE '%a%' as `ret`;  # 0


2、INSTR(str,substr) 返回字符串 str 中子字符串的第一次出现位置。若substr不在str中,则返回0。
SELECT INSTR('test', 't'); # 1
SELECT INSTR('test', 'a'); # 0



3、LOCATE(substr,str) 返回字符串 str中子字符串substr的第一次出现位置。若substr不在str中,则返回0。
LOCATE(substr,str,pos) 返回字符串 str中子字符串substr的第 pos位置后第一次出现位置。若substr不在str中,则返回0。
SELECT LOCATE('t','test'); # 1
SELECT LOCATE('a','test'); # 0

SELECT LOCATE('t','test',2); # 4


4、POSITION(substr IN str) 返回字符串 str中子字符串substr的第一次出现位置。若substr不在str中,则返回0。可看作LOCATE(substr,str)别名

SELECT POSITION('t' IN 'test'); # 1
SELECT POSITION('a' IN 'test'); # 0

 


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM