咱們平時模糊查詢第一個想到的是 like ,可是當數據量很是大的時候,用 like 可能會半天不出來結果。
因此,我就在網上搜索優化模糊查詢的方法,先試了一條簡單的: 用instr函數代替like !數據庫
instr函數有兩個參數:instr(string1,string2)函數
好比,instr("hello,world!","llo") 這個函數會返回要截取的字符串 "llo" 在原字符串中的位置 3,當沒有找到要截取的字符串時,會返回 0。
因此:測試
instr在模糊查詢中能夠這樣使用:
好比,name 是 student表裏面的一列:
select * from student s where instr(name,"zhangsan") > 0;
會返回查到name爲zhangsan那一列的結果。優化
因此,這是一個能夠代替 like 使用的小技巧。spa
雖然,和用索引查詢比起來,這點優化算是小巫見大巫,但是也有進步,生活須要一雙發現美的眼睛,哈哈。索引