SELECT DATE_FORMAT( deteline, "%Y-%m-%d %H" ) , COUNT( * )
FROM test
GROUP BY DATE_FORMAT( deteline, "%Y-%m-%d %H" )
查询某天:
deteline, "%Y-%m-%d
某时:
deteline, "%Y-%m-%d %H"
对应时间:
%Y-%m-%d %H:%I:%S 年-月-日 时:分:秒
依次类推。
根据时间查询 最大值,最小值,平均值
SQL语句:
SELECT DATE_FORMAT( start_time, "%Y-%m-%d %H:%I:%S " ) as time //时间 , min(alarm_value) as min //最小值 ,max(alarm_value) as max //最大值 ,avg(alarm_value) as avg //平均值
FROM zt_alarminfo //数据表 WHERE alarm_type='1' //查询条件 AND start_time BETWEEN '2017-05-10 10:39:31 ' AND '2017-05-13 20:10:00' //时间段
GROUP BY DATE_FORMAT( start_time, "%Y-%m-%d %H:%I:%S " ) //分组字段 及时间
其实就是对dateline进行处理,然后再对处理后的数据分组
附:MySQL group by 原理
http://doc.chinaunix.net/mysql/200903/208368.shtml
转自http://hi.baidu.com/420591397/blog/item/bb67e8951b42046bd1135e12.html