У меня следующая модель:
Для каждого товара на складе я хотел бы знать общую заказанную сумму. В моей модели каждый продукт связан с одним или несколькими товарными запасами вместе с суммой. И каждая позиция заказа связана с продуктом, также с суммой.
Пример: продукт - «Коробка с винтами», и он связан с 50-кратным запасом товара «Винт». Клиент разместил заказ на 3x «Коробка с винтами». В результате получается 150 заказанных винтов.
Я построил следующий запрос:
SELECT
stock_item.id,
(
SELECT
SUM("amount"),
(
SELECT SUM("amount")
FROM order_item AS item
WHERE item.product_id = psi.product_id
) AS "item_amount"
FROM product_productstockitem AS psi
WHERE psi.stock_item_id = stock_item.id
) AS "product_amount"
FROM stock_stockitem AS stock_item
;
PostgreSQL говорит мне следующее:
ERROR: subquery uses ungrouped column "psi.product_id" from outer query
LINE 10: WHERE item.product_id = psi.product_id
Как можно ли этого достичь?