@lolka02

Как правильно переписать запрос?

Есть запрос

SELECT `product`.`id`, `product`.`price`, 
FROM `product` 
LEFT JOIN `product_to_category` `p2c` ON p2c.product_id=product.id 
INNER JOIN `services_product` `sp` ON product.id=sp.product_id 
WHERE  (`p2c`.`category_id` IN ('32', '33', '34', '35', '54', '47', '49', '50')) 
AND (`sp`.`service_id` IN ('90', '92')) 
GROUP BY `sp`.`product_id` AND (COUNT(sp.product_id) =2)


В условии COUNT(sp.product_id) =2 означает чтобы обе услуги 90 и 92 были у товара
из за того что категорий у товара допустим 2 и услуг 2 то COUNT(sp.product_id) равняется 4, как переписать чтобы у категорий не считалось? вобщем запрос правильно сформировать)
  • Вопрос задан
  • 594 просмотра
Решения вопроса 1
Нужно считать не product_id в группе, а уникальные service_id
... HAVING (COUNT(DISTINCT('sp.service_id'))) ...
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы