1. 程式人生 > >MySQL 的instr函數

MySQL 的instr函數

有效 發現 如果 方法 bsp 檢索 from 情況 string

INSTR(STR,SUBSTR) 在一個字符串(STR)中搜索指定的字符(SUBSTR),返回發現指定的字符的位置(INDEX);
STR 被搜索的字符串 SUBS;TR 希望搜索的字符串

在字符串STR裏面,字符串SUBSTR出現的第一個位置(INDEX),INDEX是從1開始計算,如果沒有找到就直接返回0,沒有返回負數的情況。

例如,查詢字段name中帶”軍”的名字,傳統的方法是:

select name from 用戶表 where name like `%軍%‘; 用instr的方法: select name from 用戶表 where instr(‘name‘,‘軍‘
); 或: select name from 用戶表 where instr(‘name‘,‘軍‘)>0;

索引只對‘keyword%‘有效,對%開頭的(‘%keyword‘,‘%keyword%‘)起不了作用,改成 instr() 後檢索速度快了不少

MySQL 的instr函數