我有一个包含Id
、Gross Amount
和Amount Applied
的表格。
ID | Gross Amt | Amt Applied | Outstanding Amount
1 | 100 | 10 | 90
1 | 100 | 10 | 80
1 | 100 | 10 | 70
如何获取同一 id 的每列的未完成金额值。
谢谢
如果我理解正确,您可以使用累积总和。 但是,这取决于行的顺序。 SQL 表表示无序集。 您需要一列来指定排序。
假设您有这样的列,则可以对大多数数据库中的累积总和使用 ANSI 标准函数:
select t.*,
(gross_amount - sum(amt_applied) over (partition by id order by ?)
) as outstanding_amount
from t;
?
用于排序列。