【发布时间】:2020-07-26 23:22:57
【问题描述】:
我有总计
SELECT
id,
DepositValue,
action_date,
SUM(DepositValue) OVER(ORDER by action_date ROWS BETWEEN UNBOUNDED PRECEDING AND CURRENT ROW) AS Running_total
上面的选择返回了以下内容:
id action_date DepositValue Running_total
1 2020-04-01 20 20
2 2020-04-02 2 22
3 2020-04-03 8 30
4 2020-04-04 10 38
5 2020-04-05 14 48
6 2020-04-06 15 62
7 2020-04-07 22 77
8 2020-04-08 12 99
9 2020-04-09 4 103
我想要实现的是仅选择 Running_total 的一部分依赖于 action_date 以及已经计算出的值。
id action_date DepositValue Running_total
3 2020-04-03 8 30
4 2020-04-04 10 38
5 2020-04-05 14 48
【问题讨论】:
-
既然你成功使用了窗口函数,你必须运行 MySQL 8.0,而不是 5.7。我相应地更改了数据库标签。
-
id 3 的运行总数是 30,但是 id 4 的运行总数是 38?
标签: mysql sql date window-functions mysql-8.0