sql >> Databáze >  >> RDS >> Mysql

Metoda vyhledávacích polí MYSQL

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 .



  1. Řešení selhání komunikačního spojení pomocí JDBC a MySQL

  2. ap_proxy_connect_backend deaktivující pracovník pro (127.0.0.1)

  3. Nalezení výkonnostních výhod s dělením

  4. Jak získat všechny příspěvky se všemi kategoriemi ve wordpressu přes mysql?