chiunque potrebbe aiutarmi a creare una query basata sulla query seguente.Query MySQL - più clausola WHERE su 1 colonna
Come si può vedere, ho un prodotto con specifiche e determinati gruppi che si accumulano nel front-end. Conosco il problema, 1 colonna non può essere 2 valori contemporaneamente ma ho bisogno solo di quei prodotti che sono in quei 2 gruppi.
Per illustrare, product_specification_sid, id 2 3 e 4 sono formati e de resto 8 ~ 11 sono i colori, quindi vorrei scegliere un prodotto che ha 2 e 3.
interno unendo la tabella doppia isn' t un'opzione in quanto i gruppi (dimensioni, colori) possono variare in futuro.
SELECT
products.*,
categories.*,
manufacturers.*
FROM products
INNER JOIN product_categories ON product_category_pid = product_id
INNER JOIN categories ON product_category_cid = category_id
INNER JOIN manufacturers ON product_manufacturer = manufacturer_id
INNER JOIN product_specifications ON product_specification_pid=product_id
WHERE
product_active = 1
AND
(
product_specification_sid in (3)
AND
product_specification_sid in (8,9,6,7,10,11)
)
GROUP BY product_id
Ho postato una risposta che ha fatto il join interno due volte. Ma poi ho letto la tua dichiarazione che diceva che ci hai già pensato. Non capisco perché dici che non è un'opzione? – Eljakim