mysql时间段分组统计查询问题
给定一个时间,比如2014-11-25.分12段查询.假如那时候没有数据的话则为0.。拜谢各路大神注册人数时间日期108:59:012014-11-25109:03:02...
给定一个时间,比如2014-11-25.分12段查询.假如那时候没有数据的话则为0.。拜谢各路大神
注册人数 时间 日期
1 08:59:01 2014-11-25
1 09:03:02 2014-11-25
2 09:05:01 2014-11-25
3 10:10:58 2014-11-25
查询结果
时间段 注册人数
00:00-01:00 0
01:00-02:00 0
...... ......
08:00-09:00 1
09:00-10:00 3
10:00-11:00 0
.....................................
一直到23:00-00:00 展开
注册人数 时间 日期
1 08:59:01 2014-11-25
1 09:03:02 2014-11-25
2 09:05:01 2014-11-25
3 10:10:58 2014-11-25
查询结果
时间段 注册人数
00:00-01:00 0
01:00-02:00 0
...... ......
08:00-09:00 1
09:00-10:00 3
10:00-11:00 0
.....................................
一直到23:00-00:00 展开
1个回答
展开全部
你的困难在于把没有注册数量的时间补齐为0,对吧。
如果我解决这类问题,我一般是新建一个辅助表temp_h(h int),这个表有24行,值为0~23,SQL查询这个辅助表,左连接现在的数据表获得统计结果,例如:
假设你的表是data(t time,.....)
select h,count(*) from temp_h left join data on h=hour(t) where date(t)='2014-11-25' group by h
如果我解决这类问题,我一般是新建一个辅助表temp_h(h int),这个表有24行,值为0~23,SQL查询这个辅助表,左连接现在的数据表获得统计结果,例如:
假设你的表是data(t time,.....)
select h,count(*) from temp_h left join data on h=hour(t) where date(t)='2014-11-25' group by h
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询