首頁 > 資料庫 > mysql教程 > 如何有效率地使用 MySQL 的 LIKE 運算子來處理多個值?

如何有效率地使用 MySQL 的 LIKE 運算子來處理多個值?

Linda Hamilton
發布: 2025-01-05 21:47:40
原創
134 人瀏覽過

How to Efficiently Use MySQL's LIKE Operator for Multiple Values?

MySQL LIKE 查詢多個值

本文解決了在MySQL 查詢中使用LIKE 運算子搜尋多個值時遇到的常見常見問題。目標是尋找特定欄位至少包含一個指定值的行。

查詢和範例資料

考慮以下 MySQL 查詢:

SELECT * FROM table WHERE interests LIKE ('%sports%', '%pub%')
登入後複製

「興趣」包含以下範例資料欄位:

sports,shopping,pool,pc,games
shopping,pool,pc,games
sports,pub,swimming, pool, pc, games
登入後複製

問題描述

上述查詢無法如預期運作。它無法傳回任何包含“sports”或“pub”的行。

解決方案:使用布林運算符

一個簡單的解決方案是使用布林運算符,例如OR指定多個值的條件:

WHERE interests LIKE '%sports%' OR interests LIKE '%pub%'
登入後複製

更有效的解決方案:使用REGEXP

MySQL 提供了更有效的方法來使用REGEXP 運算符搜尋多個值:

WHERE interests REGEXP 'sports|pub'
登入後複製

此解決方案使用REGEXP運算子來指定符合行的正規表示式,其中「興趣」欄位包含「體育」或"pub."

資源

有關MySQL 中REGEXP 的更多信息,請參閱以下資源:

  • [MySQL REGEXP](http://www.tutorialspoint.com/mysql/mysql-regexps.htm)
  • [MySQL 論壇:LIKE 多個值](http://forums.mysql.com/read.php ? 10,392332,392950#msg-392950)

以上是如何有效率地使用 MySQL 的 LIKE 運算子來處理多個值?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
作者最新文章
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板