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.3k
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一个日期表 不然当天无数据的查不到

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题