Я пытаюсь выполнить запрос выбора для двух таблиц, одна из которых содержит, например, продукты, а другая — цвета, которые можно выбрать для этих продуктов.
Каждый продукт имеет разное количество цветов, которые можно выбрать; у одних только один цвет, у других их может быть 20.
Областью запроса является анализ списка из 20 продуктов со всеми доступными цветами. Это означает, что количество цветов на продукт не должно быть ограничено, но количество отображаемых продуктов ограничено.
Мой текущий запрос выглядит так:
SELECT p.*,
c.*
FROM Products AS p
LEFT JOIN Colors AS c ON c.ColorProductID = p.ProductID
GROUP BY p.ProductID
ORDER BY p.ProductID ASC, c.ColorID ASC
LIMIT 0, 20
Проблема с этим запросом заключается в том, что он действительно выбирает только 20 товаров из базы данных, но он также выбирает только один доступный цвет для каждого продукта, а не все доступные цвета для каждого продукта.
Как я могу изменить свой запрос, чтобы получить только 20 продуктов, но не иметь ограничений на цвета для каждого продукта?
Заранее спасибо!