使用內部函數INSTR,代替傳統的LIKE方式查詢,不僅速度更快,而且省去了通配符檢查,因此更加安全。
INSTR()函數返回字符串中子字符串第一次出現的位置。如果在str中找不到子字符串,則INSTR()函數返回零(0)。
下面說明了INSTR函數的語法。
INSTR(str,substr);
INSTR函數接受兩個參數:
? ? str 是要搜索的字符串。
? ? substr 是要搜索的子字符串。
MySQL INSTR函數示例
以下語句返回MySQL INSTR字符串中的子字符串SQL的位置。
SELECT INSTR('MySQL INSTR', 'SQL');
執行上面查詢語句,得到以下結果:
mysql> SELECT INSTR('MySQL INSTR', 'SQL');
? 3
1 row in set
? ? 1
? ? 2
? ? 3
? ? 4
? ? 5
? ? 6
? ? 7
例2
SELECT * FROM sys_user where INSTR(name, 'a' )>0
? ? 1
查找用戶名稱name中包含a的用戶,作用類似于LIKE ‘%a%’
————————————————
版權聲明:本文為CSDN博主「南風知」的原創文章,遵循 CC 4.0 BY-SA 版權協議,轉載請附上原文出處鏈接及本聲明。
原文鏈接:https://blog.csdn.net/Lives_Hui/article/details/78117532