参考:

https://blog.csdn.net/weixin_34060299/article/details/92286916/

https://blog.csdn.net/bisal/article/details/125437314

例子:一个user表 有user_id自增主键,还有create_time用户创建时间

业务需求 让你统计每天用户的总量和相比前一天增加了多少用户量

如图表二这种。

首先将每天的总量查出来 表中的时间一般为date_time类型 所以用个函数

SELECT DATE_FORMAT(create_time,'%Y-%m-%d') dd,COUNT(*) num FROM USER GROUP BY DATE_FORMAT(create_time,'%y-%m-%d')

将上一个SQL作为一个统计表来计算增量 上SQL。各位可以自己试试

SELECT a.dd,a.num,SUM(lt.num)  AS cum FROM
​
(SELECT DATE_FORMAT(create_time,'%Y-%m-%d') dd,COUNT(*) num FROM USER GROUP BY DATE_FORMAT(create_time,'%y-%m-%d'))  a
​
JOIN
​
(SELECT DATE_FORMAT(create_time,'%Y-%m-%d') dd,COUNT(*) num FROM USER GROUP BY DATE_FORMAT(create_time,'%y-%m-%d'))  lt
​
ON a.dd >= lt.dd GROUP BY dd