MySQL精確全文匹配搜尋方法
在進行文字搜尋時,通常需要找到完全匹配的單詞,而不是部分匹配。例如,搜尋「rid」應該只回傳「rid」作為完整單字出現的記錄,而不是包含「arid」之類的字詞。
使用MySQL中的REGEXP和單字邊界標記
在MySQL中,可以使用REGEXP運算子和單字邊界標記[[:<:]]
和[[:>:]]
來實現全文匹配。這些標記分別表示單字的開頭和結尾。
<code class="language-sql">SELECT * FROM table WHERE keywords REGEXP '[[:<:]]rid[[:>:]]'</code>
透過使用這些標記,查詢可以確保只傳回包含精確單字「rid」的行。
MySQL 8.0.4以上版本的更新
MySQL 8.0.4引進了更新的RegExp引擎。因此,需要使用的單字邊界標記符已更改為b
。
<code class="language-sql">SELECT * FROM table WHERE keywords REGEXP '\b rid \b'</code>
請注意,需要使用第二個反斜線轉義反斜線。按照這些步驟,您可以輕鬆地在MySQL中執行全文匹配搜索,從而確保結果的準確性。
以上是如何在 MySQL 中執行全字搜尋?的詳細內容。更多資訊請關注PHP中文網其他相關文章!