首頁 >資料庫 >mysql教程 >如何提高 MySQL 全文搜尋中特定欄位的相關性?

如何提高 MySQL 全文搜尋中特定欄位的相關性?

Susan Sarandon
Susan Sarandon原創
2024-11-07 03:02:03548瀏覽

How to Boost Relevance in MySQL Fulltext Search for Specific Fields?

如何增強特定欄位的 MySQL 全文搜尋相關性

假設您有一個包含兩列的資料庫:關鍵字和內容。您已經建立了涵蓋這兩個欄位的全文索引。但是,您希望將關鍵字列中包含特定單字的行優先於內容列中包含相同單字的行。

解決方案:

建立三個全文索引:

  1. 僅在關鍵字列上建立索引
  2. 在內容列上建立索引僅
  3. 對關鍵字和內容列都建立索引

然後,如下修改您的查詢:

說明:

  • rel1 和rel2 計算您的查詢在關鍵字和內容列中的相關性,
  • 透過將rel1 乘以1.5,可以為關鍵字賦予更高的權重。
  • WHERE 子句仍然使用關鍵字和內容的複合索引來確保傳回結果。
  • 此技術可讓您控制回想率(返回什麼結果)和相關性(如何確定匹配的優先順序),從而更加突出特定的內容田野。

以上是如何提高 MySQL 全文搜尋中特定欄位的相關性?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn