查询一段时间内每天一个时间段的注册人数
比如1-10号 每天12:00到14:00的注册人数
explain select count(user_id) as register,count(distinct logon_ip) as register_ip ,date(add_date) as  register_date from user 
where add_date > '2009-12-01 00:00:00' and add_date <'2010-03-01 00:00:00' and time(add_date)>'12:00:00' and time(add_date)<'14:00:00' 
group by register_date order by register limit 0,10执行效率较低。速度很慢 如何优化?
1 SIMPLE user ALL \N \N \N \N 4009553 Using where; Using temporary; Using filesort