Ich bin relativ neu in MYSQL und habe ein Problem, das mich schon seit einiger Zeit beschäftigt. Ich habe an verschiedenen Stellen nach Antworten gesucht, aber noch keine akzeptable Lösung gefunden.
Dies ist die Abfrage, die ich derzeit ausführe, um die beste Übereinstimmung für einen bestimmten Suchbegriff zu finden:
$query="SELECT * from `vocabulary` WHERE translation = 'word' OR translation LIKE '%word%'";
Die zurückgegebenen Ergebnisse sind umfassend und umfassen alle relevanten Zeilen. Sie sind jedoch nicht in einer bestimmten Reihenfolge sortiert und ich möchte, dass beim Drucken der Ergebnisse in PHP zuerst die genauen Übereinstimmungen angezeigt werden. So:
1 |. Wort <-genaue Übereinstimmung
2 |. Kreuzworträtsel <-alphabetische Teilübereinstimmung /
3 |. Wörter
4 |. Wordsmith
Vielen Dank für Ihre Hilfe im Voraus.
-macspacejunkie
LIKE不是全文搜索。在全文搜索中,
MATCH(...) AGAINST(...)
返回一个可以近似表示相关性的匹配分数。将首先列出精确匹配