在oracle中获取每小时之间的计数数据
我有两个日期字段在oracle中获取每小时之间的计数数据,oracle,oracle11g,oracle10g,Oracle,Oracle11g,Oracle10g,我有两个日期字段Start\u time和End\u time,每15分钟输入一项。我想取出每小时的数据,插入的计数是多少 Start_time End_time Records 05-OCT-14 10:00:00 AM 05-OCT-14 10:14:59 AM 10 05-OCT-14 10:15:00 AM 05-OCT-14 10:29:59 AM 20 05-OCT-14 10:30:00 AM
Start\u time
和End\u time
,每15分钟输入一项。我想取出每小时的数据,插入的计数是多少
Start_time End_time Records
05-OCT-14 10:00:00 AM 05-OCT-14 10:14:59 AM 10
05-OCT-14 10:15:00 AM 05-OCT-14 10:29:59 AM 20
05-OCT-14 10:30:00 AM 05-OCT-14 10:44:59 AM 30
05-OCT-14 10:45:00 AM 05-OCT-14 10:59:59 AM 40
05-OCT-14 11:00:00 AM 05-OCT-14 11:14:59 AM 10
05-OCT-14 11:15:00 AM 05-OCT-14 11:29:59 AM 50
05-OCT-14 11:30:00 AM 05-OCT-14 11:44:59 AM 50
05-OCT-14 11:45:00 AM 05-OCT-14 11:59:59 AM 50
我需要计算10到10:59和11到11.59之间有多少条记录。例如10.00到10.59计数是100
SELECT sum (record),TRUNC (start_time, 'hh')
FROM your_table
GROUP BY TRUNC (start_time, 'hh');
这导致:
COUNT(*) TRUNC(START_TIME,'HH')
160 10/5/2014 11:00:00 AM
100 10/5/2014 10:00:00 AM
这将按小时对分组的行进行计数。我希望这能有所帮助试试这个:
SELECT sum (record),TRUNC (start_time, 'hh')
FROM your_table
GROUP BY TRUNC (start_time, 'hh');
这导致:
COUNT(*) TRUNC(START_TIME,'HH')
160 10/5/2014 11:00:00 AM
100 10/5/2014 10:00:00 AM
这将按小时对分组的行进行计数。我希望这有助于您要统计哪一条数据?我需要统计有多少条记录是10到10:59和11到11.59等。您要统计哪一条数据?我需要统计有多少条记录是10到10:59和11到11.59等。如您所见,第一行是11.00到11.59之间的计数,第二行是11到11.59之间的计数10.00到10.59也许我们可以添加TRUNC(开始时间+1/24,'HH')-1/86400来获得结束时间。正如您所看到的,第一行是11.00到11.59之间的计数,第二行是10.00到10.59之间的计数。也许我们可以添加TRUNC(开始时间+1/24,'HH')-1/86400来获得结束时间。