Подзапрос в операторе SELECT (MySQL)
Я создаю оператор SQL, который возвращает список продуктов и количество каждого из них, которое я могу найти в каждом магазине.
Структура моей таблицы (с некоторыми примерами данных) выглядит следующим образом:
productID - size - color - stock - storeID 1 - S - RED01 - 1 - BCN 1 - S - RED01 - 3 - MAD 2 - S - YEL02 - 0 - BCN 2 - S - YEL02 - 2 - MAD 1 - S - RED01 - 1 - BCN2
Мне нужен результат, похожий на этот:
productID - size - stockBCN (BCN + BCN2) - stockMAD 1 - S - 2 - 3 2 - S - 0 - 2
Я использую это заявление, и отлично работает только для уникального продукта
SELECT DISTINCT prodID, size,
(SELECT SUM(stock) FROM stocks WHERE storeID IN ('BCN','BCN2') AND prodID = 1 AND size = 'S' AND color = 'RED01' GROUP BY prodID, size, color) AS stockBCN,
(SELECT SUM(stock) FROM stocks WHERE storeID = 'MAD' AND prodID = 1 AND size = 'S' AND color = 'RED01' GROUP BY prodID, size, color) AS stockMAD,
FROM stocks WHERE storeID IN ('BCN','BCN2','MAD')
AND prodID = (1) AND size = 'S' AND color = 'RED01'
Как я могу изменить его, чтобы он работал для всех строк в таблице?