Když se vám dotazy vymknou z rukou, je někdy lepší napsat jejich části v SQL a další části ve vámi zvoleném programovacím jazyce.
A k vyhledávání můžete využít i fulltextové vyhledávání. Můžete vytvořit samostatnou tabulku se všemi poli, která chcete prohledávat, a přidat FULLTEXT
modifikátor.
CREATE TABLE `search_index` (
`id` INT NOT NULL,
`data` TEXT FULLTEXT,
);
SELECT `id` FROM `search_index` WHERE MATCH(`data`) AGAINST('word1 word2 word3');