使用like关键字
select * from tbl1 where name like '%红%'
函数
- 经过'%关键字%'的方式来进行模糊搜索。
- 以'%关键字g的模糊搜索不使用索引。好比成语字典,是一个成语一个成语按字母顺序排列,好比你想查包含红这个字的成语,可是红不在开头的,要怎么查,由于红字没在开头你只能一页一页的翻。这时就至关于作like操做,全表扫描,没有任何捷径。
使用instr函数
select * from tbl1 where instr(name, '红') > 0
spa
- 将关键字与name字段的开头开始比较,若是关键字和开头的一个字符,或者顺序的几个字符相同,就返回>1
- 在模糊搜索的状况下,instr的效率比like高,由于instr直接从开头查找,找到即返回,只针对被搜索的关键字自己,而like则是在于table字段自己。好比“123F45”,“12F345”都知足%F%,若是把F换成其它字符串,like须要匹配的内容就会变多,运算量远远大于instr。