pautinaweb
Новичок
Необходимо посчитать количество товаров в каждой категории после выбора нескольких параметров.
что то вроде того:
После выбора фильтра делаю выборку так:
SELECT DISTINCT product_id
FROM `productparameter`
WHERE `cat_id` = 1 AND parameter_id IN (4,7) AND `parameter_type` IN (1,3)
GROUP BY product_id HAVING count(*) = 2
Тут у нас выбрано два параметра Бренд и силует. Вроде всё нормально, а вот как вывести оставшиеся доступные параметры и посчитать количество, ну ни как не пойму.
Если еще никаких параметров пользователь не выбрал то делаю так
SELECT p.`id`,p.`name`,p.`type`, COUNT(pp.`product_id`) AS `count`
FROM `parameter` p
INNER JOIN `productparameter` pp ON pp.`parameter_id` = p.`id`
WHERE p.`cat` = 1
GROUP BY pp.`parameter_id`
Помогите пожалуйста продолжить условие, уже голову сломал. Заранее спасибо за ответ!
что то вроде того:
Силуэт
Бальные 3
Ампир 2
А-силуэт 1
Бренд
Наталья Романова 2
Gabbiano 4
Особенности
Для беременных 4
трансформер 5
кружевные 1
Есть следующие таблицыБальные 3
Ампир 2
А-силуэт 1
Бренд
Наталья Романова 2
Gabbiano 4
Особенности
Для беременных 4
трансформер 5
кружевные 1

После выбора фильтра делаю выборку так:
SELECT DISTINCT product_id
FROM `productparameter`
WHERE `cat_id` = 1 AND parameter_id IN (4,7) AND `parameter_type` IN (1,3)
GROUP BY product_id HAVING count(*) = 2
Тут у нас выбрано два параметра Бренд и силует. Вроде всё нормально, а вот как вывести оставшиеся доступные параметры и посчитать количество, ну ни как не пойму.
Если еще никаких параметров пользователь не выбрал то делаю так
SELECT p.`id`,p.`name`,p.`type`, COUNT(pp.`product_id`) AS `count`
FROM `parameter` p
INNER JOIN `productparameter` pp ON pp.`parameter_id` = p.`id`
WHERE p.`cat` = 1
GROUP BY pp.`parameter_id`
Помогите пожалуйста продолжить условие, уже голову сломал. Заранее спасибо за ответ!