数据库中的MySQL分组
我正在创建一个数据库,该数据库将包含发生时间、发生日期和小时/分钟/秒数据库中的MySQL分组,mysql,sql,database,grouping,Mysql,Sql,Database,Grouping,我正在创建一个数据库,该数据库将包含发生时间、发生日期和小时/分钟/秒 OCCURANCE TIME FAIL 01/01/2014 01:00:00 FAIL 01/01/2014 01:05:00 FAIL 01/01/2014 02:11:11 FAIL 01/01/2014 02:09:00 FAIL 01/01/2014 02:11:11 我试图找出在给定的时间和日期范围内,每小时发生多少起事件。我想按小时对他
OCCURANCE TIME
FAIL 01/01/2014 01:00:00
FAIL 01/01/2014 01:05:00
FAIL 01/01/2014 02:11:11
FAIL 01/01/2014 02:09:00
FAIL 01/01/2014 02:11:11
我试图找出在给定的时间和日期范围内,每小时发生多少起事件。我想按小时对他们进行分组
select count(*) from table where TIME between '01-01-2014 01:00:00' AND '01-01-2014 03:00:00' GROUP BY(not sure)
预期结果
Date count
01/01/2014 hour 1 2
01/01/2014 hour 2 3
我应该只在一列中转储小时,而不是分钟和秒吗?我想这可能行得通,但我不是这方面的专家
e、 g
我尝试了这个方法,但结果只有一行的总计数。日期(时间)和小时(时间)单元格是空白的。它不起作用,我试了几次。单元格是否必须采用特殊格式才能从中提取小时和日期?@LeRay好吧,这里的每个人都假设您的
TIME
列是DATETIME
datatypeAh,这很有意义。那么我的日期必须是“yyyy-mm-dd时间”格式吗?另外,当我对两列“日期”和“小时”进行分组时,为什么day不将“小时”列设为超级种子,只显示一个日期中的所有条目?我只需要理解这一点,因为我认为我不能对多个列进行分组
OCCURANCE DATE HOUR
FAIL 01/01/2014 01
FAIL 01/01/2014 01
FAIL 01/01/2014 02
FAIL 01/01/2014 02
FAIL 01/01/2014 02
select OCCURANCE, date(time), hour(time), count(*)
from table
where TIME between '01-01-2014 01:00:00' AND '01-01-2014 03:00:00'
GROUP BY OCCURANCE, date(time), hour(time)