Możesz użyć REGEXP, aby dopasować dowolne ze słów w wyszukiwanym ciągu:
select *
from tbl
where
title REGEXP CONCAT('[[:<:]](', REPLACE('Acme burger', ' ', '|'), ')[[:>:]]')
Proszę zauważyć, że nie będzie to bardzo wydajne. Zobacz skrzypce tutaj .
Jeśli chcesz dopasować każde słowo w ciągu, możesz użyć zapytania takiego:
select *
from tbl
where
title REGEXP CONCAT('[[:<:]]', REPLACE('Acme burger', ' ', '[[:>:]].*[[:<:]]'), '[[:>:]]')
Fiddle tutaj . Ale słowa muszą być w odpowiedniej kolejności (np. „Acme burger” będzie pasować, „burger Acme” nie). Istnieje REGEXP pasujący do każdego słowa w dowolnej kolejności, ale nie jest obsługiwany przez MySql, chyba że zainstalujesz UDF, który obsługuje wyrażenie regularne Perl.