Um die Sortierung der Ergebnisse im booleschen Modus zu verbessern, können Sie Folgendes verwenden:
SELECT column_names, MATCH (text) AGAINST ('word1 word2 word3')
AS col1 FROM table1
WHERE MATCH (text) AGAINST ('+word1 +word2 +word3' in boolean mode)
order by col1 desc;
Mit dem ersten MATCH()
Wir erhalten die Punktzahl im nicht-booleschen Suchmodus (unterscheidbarer) . Die zweite MATCH()
stellt sicher, dass wir wirklich nur die gewünschten Ergebnisse zurückerhalten (mit allen 3 Wörtern) .
Ihre Abfrage wird also:
SELECT *, MATCH (artist, title) AGAINST ('paul van dyk')
AS score FROM tracks
WHERE MATCH (artist, title)
AGAINST ('+paul +van +dyk' in boolean mode)
order by score desc;
Hoffentlich; Sie werden jetzt bessere Ergebnisse erzielen.
Wenn es funktioniert oder nicht funktioniert; Bitte lassen Sie es mich wissen.