如何透過相關性排序增強MYSQL 全文搜尋結果
以相關性對搜尋結果進行排序對於提供使用者最相關的結果至關重要。在 MySQL 中,這可以透過其強大的全文搜尋功能來實現。但是,使用 LIKE 關鍵字並不構成全文搜尋。
要利用全文搜尋的功能,請使用 MATCH(...) AGAINST(...) 建構。 MATCH 子句根據指定欄位評估搜尋字詞,為每個結果產生相關性分數。此分數用於衡量結果與使用者查詢的匹配程度。
要優先考慮精確匹配,可以採用以下查詢結構:
SELECT * FROM `vocabulary` WHERE MATCH(translation) AGAINST ('word') ORDER BY MATCH(translation) AGAINST ('word') DESC
MATCH 函數計算相關性分數,DESC 限定詞確保首先顯示分數最高(即最相關)的行。這確保了“word”的精確匹配出現在結果的頂部,後面是按字母順序排序的部分匹配。
透過利用 MATCH(...) AGAINST(...) 建構,您可以提升 MYSQL 全文搜尋結果的相關性,為您的使用者提供他們所尋求的最有價值和最相關的資訊。
免責聲明: 提供的所有資源部分來自互聯網,如果有侵犯您的版權或其他權益,請說明詳細緣由並提供版權或權益證明然後發到郵箱:[email protected] 我們會在第一時間內為您處理。
Copyright© 2022 湘ICP备2022001581号-3