日期:2014-05-16  浏览次数:20635 次

一个表,查一周内相同时间的记录数
现有一个用户在线表
DROP TABLE IF EXISTS cln_online_logs;
CREATE TABLE cln_online_logs (
  count int(11) NOT NULL default '0',
  subarea varchar(500) NOT NULL default '',
  creation_date datetime NOT NULL default '2007-01-01 00:00:00',
  KEY `a` (`count`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;
 count是人数
要求查出
1.最近7天每日最高同时在线用户数

2.最近3周每周最高同时在线用户数
求sql语句

------解决方案--------------------
SQL code
select *
from cln_online_logs
where creation_date < now() and creation_date> date_add(now(),interval -7 day)



select week(creation_date),max(count )
from cln_online_logs
where creation_date < now() and creation_date> date_add(now(),interval -3 week)
group by week(creation_date)