Timol
Новичок
Есть 2 таблицы order (заказ) и ordered_goods (товары). В каждом заказе может быть от 0 до определенного множества товаров (1 и более). Есть раздел сайта, в котором можно просматривать все заказы, согласно выбранным фильтрам. В таблице ordered_goods содержатся данные по товарам (в случае изменения описания/названия/и т.п. товара, тут останутся те данные, с которыми товар был заказан).
Сейчас запрос в БД выглядит так:
GROUP BY order.id служит для того, чтобы не допустить дублирование вывода заказов, когда в заказе более одного товара.
Также есть фильтр, в котором можно найти все заказы, товары которого содержат определенный товар (WHERE ordered_goods.goods_id = 1)
Появилась задача, в таблице заказов вывести до 10 наименований товаров для каждого заказа.
Подскажите, возможно ли решить данную задачу одним запросом без GROUP BY и так, чтобы не перестал работать фильтр заказов с определенными товарами?
Сейчас запрос в БД выглядит так:
Код:
SELECT order.id, order.user, ordered_goods.name, ...
FROM order
LEFT JOIN ordered_goods ON order.id = ordered_goods.order_id
GROUP BY order.id
WHERE ...
Также есть фильтр, в котором можно найти все заказы, товары которого содержат определенный товар (WHERE ordered_goods.goods_id = 1)
Появилась задача, в таблице заказов вывести до 10 наименований товаров для каждого заказа.
Подскажите, возможно ли решить данную задачу одним запросом без GROUP BY и так, чтобы не перестал работать фильтр заказов с определенными товарами?