获取查询每一行的累积总和

时间:2020-03-22 01:43:38

标签: python database sqlalchemy

我正在使用python 3.8和sqlalchemy 1.3

所以我想做的事情与这里的答案非常相似: Cumulating value of current row + sum of previous rows

我有一张桌子,上面有一列,上面有一个数字。我想查询该表,但对于每一行,必须具有所有先前所有行的总和。

但是现在我正在考虑这有多实用,以及是否还有其他方法。 我目前的担忧是:

  • 查询需要运行多次。
  • 每次,都需要重新计算每一行的总和。
  • 表的大小变小了(大约100万行)。因此,这种方法可能会对性能产生影响。
  • 我能够添加或删除行,这些行在排序时会修改其他行的总和。
  • 我还在对查询进行分页(sqlalchemy的限制+偏移量),这使宝贵的解决方案变得无用。

对于这种问题,您还建议其他什么方法?

我想过的一种方法:

  • 将总和保存在数据库中,每次我添加/删除一行时,尝试重新计算所有受影响的行的总和。

0 个答案:

没有答案