De nieuwe InnoDB full-text zoekfunctie in MySQL 5.6 helpt in dit geval. Ik gebruik de volgende query:
SELECT MATCH(column) AGAINST('(word1* word2*) ("word1 word1")' IN BOOLEAN MODE) score, id, column
FROM table
having score>0
ORDER BY score
DESC limit 10;
waar ( )
groepeert woorden in een subuitdrukking. De eerste groep heeft like word%
betekenis; de tweede zoekt naar de exacte zin. De score wordt teruggegeven als float.