聚合级别关闭 (Postgresql)

Aggregation level is off (Postgresql)

我有 2 个客户的订单数据和他们的订单。我正在尝试计算仅针对产品 N

的特定订单的每个客户的价格总和

Table:

这是我的查询:

select Customer_ID, Order_ID, Sales_Date,
sum(Price) over (partition by Customer_ID, Order_ID order by Customer_ID, Order_ID)
from orders
group by 1,2,3, Price
order by;

出于某种原因,我不明白它为同一位客户提供了多行。我试图让每个客户和产品 N

的订单只生成一行

这是我当前的输出:

期望的结果:

为什么要使用 window 函数?我想你只是想要聚合:

select Customer_ID, Order_ID, Sales_Date,
       sum(Price)
from orders
group by 1,2,3;

如果您只想要一种产品,请添加 where product = 'N'