我需要为PostGres数据库编写一个SQL查询。目标是基于表的内容创建视图。
这是我的起始表:
Rank Value
1 4
2 5
3 8
4 11
5 19
6 32
7 55
这是我想要构建的视图:
Rank Value SumUpTo
1 4 4
2 5 9
3 8 17
4 11 28
5 19 47
6 32 79
7 55 134
列Rank和Value只是从原始表中复制的。
SumUpTo列是通过将原始表中从秩1到当前秩的所有值相加来计算的。
我尝试过这些查询,但都失败了:
CREATE VIEW myview AS SELECT rank,value,(SELECT SUM(value) FROM mytable WHERE (rank<rank)) as SumUpTo FROM mytable;
CREATE VIEW myview AS SELECT rank,value,(SELECT SUM(value) FROM mytable WHERE (rank<mytable.rank)) as SumUpTo FROM mytable;
编写查询以获得我想要的结果的正确方法是什么?