帮老师做项目的时候遇到一个问题,要统计一个系统中一周之类和一月之类每天注册系统的用户数,有什么高效便捷的的查询方式吗?
添加一个字段(daytime)只精确到天(y-m-d),为了高效,可以加上索引,毕竟要group by daytime
这样的思路是可以把每天当成一个组,再利用count来计算每天(组)的数量,就是每天的注册数了。
SQL语句如下:
select count(1) from table
group by daytime
limit 7/(28/29/30/31)
一周就limit 7
一个月的话可以根据参数来定。
上述是解决以查询当天为标准来得出统计
如果要查询任一时间段,可以这样写
select count(1) from table
where daytime
between start
and end
group by daytime
望采纳~
4 回答1.3k 阅读✓ 已解决
4 回答1.2k 阅读✓ 已解决
1 回答2.5k 阅读✓ 已解决
8 回答1.2k 阅读
3 回答1k 阅读✓ 已解决
2 回答710 阅读✓ 已解决
2 回答1.7k 阅读
你可以这样做:新增一个最近登录时间字段,然后查询的时候进行时间计算:当前时间-最近登录时间<=7的就是一周登录的用户,注册就增加一个创建时间字段