如何按天分组,查询每一天的最近7天的数据

统计上需要按天分组,查询每一天的最近7天的登录次数,数据库设计为

CREATE TABLE `login_log` (
  `id` int(11) NOT NULL AUTO_INCREMENT,
  `uid` int(11) NOT NULL DEFAULT '0',
  `created` datetime NOT NULL,
  PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;

每天登陆产生一条LOG,但每天不会产生多条LOG,请问这种情况下如何书写SQL语句?

阅读 11.3k
1 个回答
SELECT COUNT(*) 
FROM login_log 
WHERE id=? AND DATE_ADD(created, interval 1 WEEK) >= now() 
GROUP BY TO_DAYS(created);
撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题