1. 程式人生 > >mysql字串函式:locate()

mysql字串函式:locate()

今天做一個模糊查詢,一開始使用的是like,但是發現對於特殊字元操作難以處理,查詢特殊字元查不到,後來聽同事告訴這個函式,天秀

語法 一:
LOCATE(substr,str)
返回字串substr中第一次出現子字串的位置 str。

語法二:
LOCATE(substr,str,pos)
返回字串substr中第一個出現子 字串的 str位置,從位置開始 pos。0 如果substr不在,則 返回str。返回 NULL如果substr 或者str是NULL。

簡單例子:

mysql> SELECT LOCATE('bar', 'foobarbar');
        -> 4
mysql> SELECT LOCATE('xbar', 'foobar');
        -> 0
mysql> SELECT LOCATE('bar', 'foobarbar', 5);
        -> 7

eg:

select * from users where locate('@',emails) > 0;

十分好用,可以做個記錄