有一张a表是报警表,有id,name(报警机器名),date(报警时间)三个字段
记录有
id name date
1 机器一 2009-04-01 20:10:10
2 机器二 2009-03-30 19:05:05
3 机器一 2009-03-25 06:05:01
4 机器二 2009-03-10 12:05:05
5 机器一 2009-03-30 06:55:01
按照时间段来统计报警次数,如下面显示。要求:1、必须显示左边的时间段,2、统计出每个时间段的报警次数,如果没有报警就以0显示。
机器一 机器二
报警次数 报警次数
上午6时 2
上午7时 0
上午8时 0
上午9时 0
上午10时 0
上午11时 0
上午12时 0
下午13时 0
下午14时 0
下午15时 0
下午16时 0
下午17时 0
下午18时 0
下午19时 0
晚上20时 1
晚上21时 0
晚上22时 0
晚上23时 0
凌晨0时 0
凌晨1时
凌晨2时 0
凌晨3时 0
凌晨4时 0
凌晨5时 0
各位能否给一下答案。非常着急!谢谢!
记录有
id name date
1 机器一 2009-04-01 20:10:10
2 机器二 2009-03-30 19:05:05
3 机器一 2009-03-25 06:05:01
4 机器二 2009-03-10 12:05:05
5 机器一 2009-03-30 06:55:01
按照时间段来统计报警次数,如下面显示。要求:1、必须显示左边的时间段,2、统计出每个时间段的报警次数,如果没有报警就以0显示。
机器一 机器二
报警次数 报警次数
上午6时 2
上午7时 0
上午8时 0
上午9时 0
上午10时 0
上午11时 0
上午12时 0
下午13时 0
下午14时 0
下午15时 0
下午16时 0
下午17时 0
下午18时 0
下午19时 0
晚上20时 1
晚上21时 0
晚上22时 0
晚上23时 0
凌晨0时 0
凌晨1时
凌晨2时 0
凌晨3时 0
凌晨4时 0
凌晨5时 0
各位能否给一下答案。非常着急!谢谢!
count( case name when 机器一 then 1 else then 0 end),
count( case name when 机器二 then 1 else then 0 end)
from table group by to_char(date,'HH24');
要是所有的数据那一楼的对的.要是每天的话,就得把to_char('YYYYMMDD-HH24')了