Pokud tedy předpokládáme, že sloupce name
a colors
jsou jediné sloupce, které potřebujeme prohledat, udělal bych následující (naivní řešení, ale bude fungovat dobře, pokud vaše DB nemá miliony řádků a nemáte tisíce zákazníků, kteří hledají najednou).
Nejprve vytvořte pohled
CREATE VIEW SearchHere AS
SELECT item_id, CONCAT(name, ' ', colors) AS FullDescription
FROM table
Neznám název tabulky na vašem snímku obrazovky, takže jsem použil table
jako jeho název.
Nyní, pokud uživatel hledá adult red pants
můžete zadat dotaz
SELECT item_id
FROM SearchHere
WHERE FullDescription LIKE '%adult%'
AND FullDescription LIKE '%red%'
AND FullDescription LIKE '%pants%'
Samozřejmě budete muset generovat dotaz za běhu, ale to není problém. Můžete si hrát s použitím AND
nebo OR
a umístění mezer mezi zástupný symbol %
a hledaný výraz. Pravděpodobně byste také chtěli provést zobrazení sofistikovanějším způsobem, např. udělat více než jen CONCAT
.