mysql 如何计算每日新增的用户数?

clipboard.png

题目如上,指定某一天的话我知道怎么算,但是不知道怎么计算每天的新增用户数,比如假设是 5月1号 - 5月30号的,希望最后的结果是:

日期          新增用户数
2019-05-01        10
2019-05-02        0
2019-05-03        10
2019-05-04        10
2019-05-05        10
...
2019-05-30        10
阅读 12.4k
3 个回答

拆成两个语句

每日新增用户数:

select date(create_time) d, count(1) from user
where create_time >= '2019-05-01' and create_time <= '2019-05-30'
group by d order by d desc;

每日订单数与下单用户数:

select date(create_time) d, count(1), count(distinct user_id) from order
where create_time >= '2019-05-01' and create_time <= '2019-05-30'
group by d order by d desc;

恕我SQL一般,但是你这个题目意思是只算每天新增人数的意思吧,你如果不把之前新增的用户数先保留下来,怎么查看10天前新增的有多少人呢?

还要 join一个日期表 不然当天无数据的查不到

推荐问题