MySQL按日期分组并统计截止当前时间的总数

世间安得双全法,不负如来不负卿
表结构如下所示:users表示当天新增的用户数
这里写图片描述

现在的需求是这样的:按每天分组,查询当天新增的用户总数和截止到当前时间新增的用户总数,结果如下:
这里写图片描述
SQL语句如下:

SELECT
    reg_time,
    total1 as '小计',
    @total := @total + total1 AS '总计'
FROM
    (
        SELECT
            date(reg_time) AS reg_time,
            sum(users) AS total1
        FROM
            test
        GROUP BY
            date(reg_time)
    ) AS temp,
    (SELECT @total := 0) AS T1
ORDER BY
    reg_time;

解释一下:SELECT @total := 0,,这句的意思是给临时变量@total设置值为0;

如此即可得出上面的结果满足需求.

猜你喜欢

转载自blog.csdn.net/a_runner/article/details/80056630
今日推荐