【发布时间】:2020-11-04 09:57:30
【问题描述】:
我想在postgres中写一个非递归的公用表表达式(CTE)来计算一个累积和,这里有一个例子,输入表:
----------------------
1 | A | 0 | -1
1 | B | 3 | 1
2 | A | 1 | 0
2 | B | 3 | 2
输出应如下所示:
----------------------
1 | A | 0 | -1
1 | B | 3 | 1
2 | A | 1 | -1
2 | B | 6 | 3
如您所见,计算了第 3 列和第 4 列的累积和,使用递归 CTE 很容易做到这一点,但使用非递归 CTE 是如何完成的呢?
【问题讨论】:
-
你的操作在我看来不像是累积的。例如,“6”是从哪里来的?
标签: sql postgresql sum sql-order-by window-functions