我有一个只有Operation
个附加的表,其中包含以下列:
-
Id
,整数,主键,自动递增 -
LotId
,整数,外键,自动递增 - -
Amount
,整数
每当在该表中插入新行时,我都需要反映余额,因此我使用以下命令创建了一个Ledger
视图:
CREATE VIEW IF NOT EXISTS "Ledger" ("OperationId", "Balance")
AS SELECT "Id", SUM("Amount") OVER (ROWS UNBOUNDED PRECEDING)
FROM "Operation";
我需要的是通过LotId
进一步过滤运行总和,即总和应该只包括Operation
中LotId
匹配的那些行.
示例
Operation Ledger
Id | LotId |Amount OperationId | LotId | Balance
---+-------+------ ------------+-------+--------
1 | 1 | 10 1 | 1 | 10
2 | 2 | 5 2 | 2 | 5
3 | 1 | -7 3 | 1 | 3