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 번역 = '단어' OR 번역 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(...)
는 관련성에 근접한 일치 점수를 반환합니다.으아아아
정확한 일치 항목이 먼저 나열됩니다