如何在SQLite中更新累计了另一列的列?

时间:2018-04-26 07:13:28

标签: sqlite

我有一张这样的表:

COL1 | COL2
------------
1    | NULL
2    | NULL
3    | NULL
4    | NULL

如何使用SQL更新具有前一行累计总数的COL2?像这样:

COL1 | COL2
------------
1    | 1
2    | 3
3    | 6
4    | 10

感谢。

1 个答案:

答案 0 :(得分:0)

得到了我的同事的答案:(假设表名是abc)

UPDATE abc set col2 =(     SELECT temp.t from(SELECT abc.id,SUM(def.col1)as t FROM abc as abc as def on def.id< = abc.id group by abc.id)as temp WHERE abc.id = temp.id )

或者我们可以使用它:

将abc SELECT abc.id,r2.col1,SUM(r2.col1)替换为col2 FROM abc将abc作为r2加入r2.id< = abc.id group by abc.id