用法:mysql
LOCATE(substr,str) POSITION(substr IN str)
返回子串 substr 在字符串 str 中第一次出現的位置。若是子串 substr 在 str 中不存在,返回值爲 0(若是出如今首位,那麼也不能返回0,因此下標從1開始計算):
mysql> SELECT LOCATE('bar', ‘foobarbar');
-> 4
mysql> SELECT LOCATE('xbar', ‘foobar');
-> 0
這個函數是多字節安全的。在 MySQL 3.23 中,這個函數是字母大小寫敏感的,當在 MySQL 4.0 中時,若有任一參數是一個二進制字符串,它纔是字母大小寫敏感的。
LOCATE(substr,str,pos)
返回子串 substr 在字符串 str 中的第 pos 位置後第一次出現的位置(即從pos截斷,在以後的字符串中尋找出現的位置)。若是 substr 不在 str 中返回 0 :
mysql> SELECT LOCATE('bar', ‘foobarbar',5);
-> 7
這個函數是多字節安全的。在 MySQL 3.23 中,這個函數是字母大小寫敏感的,當在 MySQL 4.0 中時,若有任一參數是一個二進制字符串,它纔是字母大小寫敏感的。
一個典型的例子是:
slect * from tablename where LOCATE(colum1,colum1,1)>0sql