Om het sorteren van de resultaten in de booleaanse modus te verbeteren, kunt u het volgende gebruiken:
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;
De eerste . gebruiken MATCH()
we krijgen de score in niet-booleaanse zoekmodus (meer onderscheidend) . De tweede MATCH()
zorgt ervoor dat we echt alleen de resultaten terugkrijgen die we willen (met alle 3 de woorden) .
Uw vraag wordt dus:
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;
Hopelijk; je krijgt nu betere resultaten.
Als het werkt of niet werkt; laat het me weten.