Mysql的instr()函数用法

  • Post author:
  • Post category:mysql


mysql的内置函数instr(filed,str),作用是返回str子字符串在filed字符串的第一次出现的位置,如果没有找到,则返回0。备注:位置是从1开始的。函数不区分大小写。当instr(filed,str)=0时,表示子符串str不存在于字符串filed中,因此可以用来实现mysql中的模糊查询,与like用法类似。如下:

 1、instr()函数,#{name}为参数
select id,name from test where instr(name,#{name})>0 
 2like
select id,name from test where name like concat('%',#{name},'%')

instr()详细用法如下:

instr(filed,str) > 0file like '%str%'
instr(filed,str) = 1file like  'str%'
instr(filed,str) = 0file not like  '%str%'

INSTR()函数与LIKE运算符

在没有索引的情况下,INSTR()函数与LIKE运算符的速度是一样的;

在有索引的情况下,使用左匹配的LIKE运算符搜索,LIKE运算符速度会更快一些。



版权声明:本文为weixin_35790277原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。