我的想法是,我有一列Amount
,它包含负数和正数。我想计算Balance
每行将具有前一个金额加上Amount
内的值,例如
| Amount | | Balance |
+--------+ |---------+
| +5 | | 5 | -- Initial balance should be 0
| +100 | | 105 |
| -10 | | 95 |
我想问的是,用于计算Balance
的方法或算法应该是什么?
答案 0 :(得分:2)
您正在寻找累计金额:
select amount, sum(amount) over (order by ??)
from t;
??
用于指定排序的列。 SQL表表示无序集。因此,对于累积总和,您需要一个指定排序的列。