【问题标题】:Mysql Sum up to each day of the month [duplicate]Mysql总结每月的每一天[重复]
【发布时间】:2017-05-14 22:53:54
【问题描述】:

获取每月每一天的总和

这是我的付款表

amount  | date_added
===================================
30.00           |2016-12-05 20:48:13
-10             |2016-12-10 17:39:45
-55.30          |2016-12-10 17:55:18
78.00           |2016-12-11 14:50:50
-20.00          |2016-12-11 15:50:50
-30.00          |2016-12-22 01:47:22
300.00          |2016-12-23 01:01:36
-40             |2016-12-24 02:10:00

我尝试了以下查询,但它给出了每天的总和。

SELECT SUM(`amount`) as total_amount, `date_added`  FROM `payment` where (`payment`.`date_added` between '2016-12-1'  and '2016-12-30') GROUP BY  DATE(date_added)

结果是

total_amount    | date_added
===================================
30.00       |2016-12-05 20:48:13
-65.30      |2016-12-10 17:39:45
58.00       |2016-12-11 14:50:50
-30.00      |2016-12-22 01:47:22
300.00      |2016-12-23 01:01:36
-40.00      |2016-12-24 02:10:00

我想要的是总结每个月的每一天。不是每天的总和。

我想要 Mysql 的以下结果。

total_amount    | date_added
===================================
30.00       |2016-12-05 20:48:13
-35.30      |2016-12-10 17:39:45
22.70       |2016-12-11 14:50:50
-7.30       |2016-12-22 01:47:22
292.70      |2016-12-23 01:01:36
252.70      |2016-12-24 02:10:00

【问题讨论】:

  • 这称为累计或累计,请参阅重复主题以获得答案。
  • 好吧,让我用累积标题复习

标签: mysql cumulative-sum


【解决方案1】:

测试此代码。在第二张桌子之后。然后您可以编写最佳查询。这里的表 t 是第二个表

SELECT (SELECT SUM(x.count)
            FROM TABLE x
           WHERE x.id <= t.total_amount) AS total_amount
    FROM TABLE t
ORDER BY t.total_amount

【讨论】:

    猜你喜欢
    • 2012-02-24
    • 2018-07-31
    • 2014-11-24
    • 1970-01-01
    • 1970-01-01
    • 2020-05-13
    • 1970-01-01
    • 2016-02-27
    • 1970-01-01
    相关资源
    最近更新 更多