如何在sql行中求和

如何在sql行中求和,sql,Sql,我有一张这样的桌子 code Quantity 1 5 1 6 2 2 2 1- 3 4 . . code Quantity remain 1 5 5 1 6 11 2 2 2 2 1- 1 3 4 4 . . 你怎么能做到这样 code Quantity 1 5 1 6 2

我有一张这样的桌子

code  Quantity
1      5
1      6
2      2
2      1-
3      4
.
.
code  Quantity  remain
1      5          5
1      6          11
2      2          2
2      1-         1
3      4          4
.
.
你怎么能做到这样

code  Quantity
1      5
1      6
2      2
2      1-
3      4
.
.
code  Quantity  remain
1      5          5
1      6          11
2      2          2
2      1-         1
3      4          4
.
.

您的查询假定行的顺序。我假设你有这样一个专栏

假设这些值是数字(
1-
?),则可以简单地使用累积和:

select t.*,
       sum(quantity) over (partition by code order by ?) as remaining
from t;
用于指定排序的列。

您可以进行窗口求和,但您需要一个列来明确排序共享相同
代码的组内的记录。我假设此列名为
id

select t.*, sum(quantity) over(partition by code order by id) remain from mytable t

您的结果假定行的顺序。SQL表表示无序集。您是否有指定排序的列?