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

Vyhledávací produkty MySQL s jejich atributy

Musíte se připojit pomocí product_filters samostatně pro každý atribut:

SELECT DISTINCT products.*  
FROM products
JOIN product_filters AS f1 ON f1.product_id=products.id
JOIN product_filters AS f2 ON f2.product_id=products.id
WHERE ( f1.attribute_id=1 and f1.filter_id in (1,2) )
AND ( f2.attribute_id=3 and f2.filter_id in (6) )

DEMO

Vaše verze se pokusila najít jeden řádek v product_filters který má obě ID atributů, což není možné.




  1. Spouští připojení více tabulek

  2. převést php datum do formátu mysql

  3. Node-mysql vložit dotaz se dvěma hodnotami?

  4. Naplňte asociativní pole uvnitř vnořené tabulky