首頁  >  文章  >  資料庫  >  如何以相關性對 MySQL 全文搜尋結果進行排序?

如何以相關性對 MySQL 全文搜尋結果進行排序?

Patricia Arquette
Patricia Arquette原創
2024-11-05 07:21:02282瀏覽

How to Order MySQL Fulltext Search Results by Relevance?

如何以相關性為MYSQL 全文搜尋結果排名

問題:

問題:

問題:

問題:
SELECT * FROM `vocabulary`
WHERE MATCH(`translation`) AGAINST ('word')
ORDER BY MATCH(`translation`) AGAINST ('word') DESC;

問題:

問題:

id translation
1 word
2 crossword
3 words
4 wordsmith

我該如何按相關性對MYSQL 全文搜尋結果進行排序,優先考慮精確匹配並對部分匹配進行排序按字母順序排列?
id translation
1 word
2 crossword
3 words
4 wordsmith
答案:要在 MYSQL 中執行全文搜索,請使用 MATCH(...) AGAINST(...) 構造而不是 LIKE 運算子。 MATCH(...) AGAINST(...) 傳回每個結果的相關性分數,可用於依相關性對結果進行排序。 這是一個修改後的查詢,它使用全文搜尋並對結果進行排序相關性:此查詢將首先傳回完全匹配的結果,然後按降序排序的部分匹配相關性。 範例:考慮以下詞彙表:使用搜尋字詞「word」執行上述查詢將傳回下列結果依相關性排序:

以上是如何以相關性對 MySQL 全文搜尋結果進行排序?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

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