MYSQL 全文検索結果をソートするための関連性メソッド
P粉938936304
2023-08-24 12:03:52
<p>私は MYSQL をあまり使用したことがありませんが、しばらく悩まされている問題があります。さまざまな場所で答えを探してみましたが、まだ満足のいく解決策が見つかりません。 </p>
<p>これは、指定された検索語に最もよく一致するものを見つけるために現在実行しているクエリです: </p>
<pre class="brush:php;toolbar:false;">$query="SELECT * from `vocabulary` WHERE translation = 'word' OR translation LIKE '%word%'";</pre>
<p>返される結果は、関連するすべての行を含む包括的なものです。ただし、それらは特定の順序で並べ替えられていないため、PHP で結果を出力するときに、完全に一致するものを最初に表示したいと考えています。このように: </p>
<p>1 | 単語 <-完全一致</p><p>
2 | クロスワード <-アルファベットの部分一致 /</p><p>
3 | 言葉</p><p>
4 | ワードスミス</p>
<p>この度は大変お世話になり、誠にありがとうございます。 </p>
<p>-macspacejunkie</p>
LIKE は 全文検索ではありません。全文検索では、
MATCH(...) AGAINST(...)
は関連性を近似する一致スコアを返します。リーリー
完全一致が最初にリストされます