Bạn có thể sử dụng REGEXP để khớp với bất kỳ từ nào trong chuỗi tìm kiếm của mình:
select *
from tbl
where
title REGEXP CONCAT('[[:<:]](', REPLACE('Acme burger', ' ', '|'), ')[[:>:]]')
Xin lưu ý rằng điều này sẽ không hiệu quả lắm. Xem fiddle tại đây .
Nếu bạn cần đối sánh mọi từ trong chuỗi của mình, bạn có thể sử dụng truy vấn như sau:
select *
from tbl
where
title REGEXP CONCAT('[[:<:]]', REPLACE('Acme burger', ' ', '[[:>:]].*[[:<:]]'), '[[:>:]]')
Fiddle tại đây . Nhưng các từ phải theo đúng thứ tự (ví dụ:'Acme burger' sẽ khớp, 'burger Acme' thì không). Có một REGEXP để khớp mọi từ theo bất kỳ thứ tự nào, nhưng nó không được MySql hỗ trợ, trừ khi bạn cài đặt một UDF hỗ trợ Perl regexp.