前置知识:
设date1是日期,格式形如'2001-02-03 04:05:06'
DATE()返回日期,
DATE(date1)的结果为'2001-02-03'
日期:DATE()
年:year()
月:MONTH()
日:DAY()
时:HOUR()
分:MINUTE()
秒:SECOND()
星期:WEEK()
DATE_FORMAT()格式化函数
DATE_FORMAT(date1,'%Y.%m.%d %H:%M:%S')的结果为'2001.02.03 04:05:06'
按不同时间粒度分组聚合,以半小时聚合为例:
select
DATE_FORMAT(concat(DATE(date),' ',
HOUR(date),':',floor(MINUTE(date/30))*30,
'%Y-%m-%d %H:%M') AS date1,
count(*)
from
表
group by date1
其他时间粒度写法类似。