может ли кто-нибудь помочь мне создать запрос на основе запроса, приведенного ниже.
Как вы можете видеть, у меня есть продукт со спецификациями и определенными группами, которые создаются на переднем плане. конец. Я знаю проблему, в 1 столбце не может быть 2 значений одновременно, но мне нужны только те продукты, которые находятся в этих 2 группах.
Чтобы проиллюстрировать, product_specification_sid, id 2 3 и 4 являются размерами, а остальные 8 ~ 11 - цветов, поэтому я хотел бы выбрать продукт, у которого есть 2 и 3.
Внутреннее соединение двойного стола не вариант, поскольку группы (размеры, цвета) могут измениться в будущем.
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