繁体   English   中英

如何计算从上一个日期到更新的值

[英]How to calculate the value from the previous date to uptodate

我想计算 previous_date 到 up_to_date 的值。 请参阅下面的示例表。

参与者 总参与者
2021-07 6个 6个
2021-08 5个 11
2021-09 20 31

假设我们在 2021 年 7 月有 6 名参与者并且参与者总数等于 6。然后在 2021 年 8 月我们有 5 名参与者,它将添加上个月(参与者总数)和当前的两个值。 它应该是 11,因为 6 + 5 = 11。然后在 2021 年 9 月我们有 20 个参与者,所以 total_participant(11) + participant(20) = total_participant(31) 的总和

这是“累计金额”。

对于 MySQL 8+ 使用 window function:

SELECT `month`,
       participant,
       SUM(participant) OVER (ORDER BY `month`) `total participant`
FROM test;

对于 MySQL 5.x,使用 2 个表副本:

SELECT t1.`month`,
       t1.participant,
       SUM(t2.participant) `total participant`
FROM test t1
JOIN test t2 ON t1.`month` >= t2.`month`
GROUP BY t1.`month`,
         t1.participant;

https://dbfiddle.uk/?rdbms=mysql_8.0&rdbms2=mysql_5.7&fiddle=0f0152e44e18a57af8955fd4f7d881e2

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM