排序MYSQL全文搜尋結果的相關性方法
P粉938936304
2023-08-24 12:03:52
<p>我對MYSQL相對較新,有一個問題困擾了我一段時間。我嘗試在各個地方搜尋答案,但是還沒有找到可接受的解決方案。 </p>
<p>這是我目前運行的查詢,用於找到給定搜尋字詞的最佳匹配:</p>
<pre class="brush:php;toolbar:false;">$query="SELECT * 從 `vocabulary` WHERE translation = 'word' OR translation LIKE '%word%'";</pre>
<p>它傳回的結果是全面的,包括所有相關的行。然而,它們沒有按照任何特定的順序排序,我希望在PHP中列印結果時,首先顯示完全匹配的結果。像這樣:</p>
<hr />
<p>1 | word <-完全符合</p><p>
2 | crossword <-按字母順序排序的部分匹配 /</p><p>
3 | words</p><p>
4 | wordsmith</p>
<hr />
<p>非常感謝您提前的幫忙。 </p>
<p>-macspacejunkie</p>
LIKE不是全文搜尋。在全文搜尋中,
MATCH(...) AGAINST(...)
傳回一個可以近似表示相關性的匹配分數。將會先列出精確比對