Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/oracle/9.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Sql 使用百分比聚合每天的小时数据_Sql_Oracle - Fatal编程技术网

Sql 使用百分比聚合每天的小时数据

Sql 使用百分比聚合每天的小时数据,sql,oracle,Sql,Oracle,基于以下数据,我们如何将CPU空闲和使用的百分比转换为一天的总和 例如,我正在寻找聚合状态,以显示2015年6月18日这一天的CPU利用率为97%空闲和10%忙,2015年6月19日这一天的CPU利用率为80%空闲和20%忙。。。等等 18-JUN-15 05.00.15.571 AM 98.75 .69 .55 .01

基于以下数据,我们如何将CPU空闲和使用的百分比转换为一天的总和

例如,我正在寻找聚合状态,以显示2015年6月18日这一天的CPU利用率为97%空闲和10%忙,2015年6月19日这一天的CPU利用率为80%空闲和20%忙。。。等等

18-JUN-15 05.00.15.571 AM                                                        98.75        .69        .55         .01                                                                                                                                                                                                                                                                                        
18-JUN-15 06.00.18.183 AM                                                        98.37          1        .63         .01                                                                                                                                                                                                                                                                                        
18-JUN-15 07.00.03.804 AM                                                        97.67       1.56        .76         .01                                                                                                                                                                                                                                                                                        
18-JUN-15 08.00.07.987 AM                                                        97.78       1.46        .75         .01                                                                                                                                                                                                                                                                                        
18-JUN-15 09.00.00.707 AM                                                         97.8       1.44        .75         .01                                                                                                                                                                                                                                                                                        
18-JUN-15 10.00.03.628 AM                                                        97.06       2.09        .84         .01                                                                                                                                                                                                                                                                                        
18-JUN-15 11.00.06.660 AM                                                        97.92       1.36        .71         .01                                                                                                                                                                                                                                                                                        
18-JUN-15 12.00.09.538 PM                                                        97.93       1.34        .72           0                                                                                                                                                                                                                                                                                        
18-JUN-15 01.00.12.455 PM                                                        97.95       1.31        .73         .01                                                                                                                                                                                                                                                                                        
18-JUN-15 02.00.15.177 PM                                                        97.92       1.34        .73         .01                                                                                                                                                                                                                                                                                        
18-JUN-15 03.00.17.829 PM                                                        98.11       1.18         .7         .01                                                                                                                                                                                                                                                                                        
18-JUN-15 04.00.20.657 PM                                                        98.58        .82        .59         .01                                                                                                                                                                                                                                                                                        
18-JUN-15 05.00.23.284 PM                                                        94.32       4.29       1.38         .01                                                                                                                                                                                                                                                                                        
18-JUN-15 06.00.26.366 PM                                                        91.97       6.38       1.64         .01                                                                                                                                                                                                                                                                                        
18-JUN-15 07.00.30.108 PM                                                        98.51        .88         .6         .01                                                                                                                                                                                                                                                                                        
18-JUN-15 08.00.34.282 PM                                                        98.78        .67        .55         .01                                                                                                                                                                                                                                                                                        
18-JUN-15 09.00.02.411 PM                                                        96.39       3.01        .59         .01                                                                                                                                                                                                                                                                                        
18-JUN-15 10.00.05.019 PM                                                        97.91       1.53        .55         .01                                                                                                                                                                                                                                                                                        
18-JUN-15 11.00.07.827 PM                                                        98.64        .79        .56         .01                                                                                                                                                                                                                                                                                        
19-JUN-15 12.00.10.329 AM                                                        98.07       1.27        .65           0                                                                                                                                                                                                                                                                                        
19-JUN-15 01.00.12.954 AM                                                        98.65        .79        .56           0                                                                                                                                                                                                                                                                                        
19-JUN-15 02.00.15.499 AM                                                         96.9       2.23        .86         .01                                                                                                                                                                                                                                                                                        
19-JUN-15 03.00.18.041 AM                                                        98.75        .68        .57         .01                                                                                                                                                                                                                                                                                        
19-JUN-15 04.00.01.618 AM                                                        98.72        .71        .56         .01                                                                                                                                                                                                                                                                                        
19-JUN-15 05.00.05.221 AM                                                        98.73         .7        .56         .01                                                                                                                                                                                                                                                                                        
19-JUN-15 06.00.08.719 AM                                                        98.48        .91        .61         .01                                                                                                                                                                                                                                                                                        
19-JUN-15 07.00.12.035 AM                                                        97.39       1.79        .81         .01                                                                                                                                                                                                                                                                                        
19-JUN-15 08.00.14.827 AM                                                        97.42       1.76        .81         .01                                                                                                                                                                                                                                                                                        
19-JUN-15 09.00.17.804 AM                                                         97.4       1.76        .83         .01                                                                                                                                                                                                                                                                                        
19-JUN-15 10.00.20.560 AM                                                        97.98       1.29        .72         .01                                                                                                                                                                                                                                                                                        
19-JUN-15 11.00.02.756 AM                                                        98.07       1.23         .7         .01                                                                                                                                                                                                                                                                                        
19-JUN-15 12.00.07.015 PM                                                         98.1        1.2         .7         .01                                                                                                                                                                                                                                                                                        
19-JUN-15 01.00.10.953 PM                                                        98.03       1.24        .72         .01                                                                                                                                                                                                                                                                                        
19-JUN-15 02.00.15.406 PM                                                        97.84       1.42        .73         .01                                                                                                                                                                                                                                                                                        
19-JUN-15 03.00.19.628 PM                                                        98.03       1.25        .72         .01                                                                                                                                                                                                                                                                                        
19-JUN-15 04.00.24.111 PM                                                        98.56        .83         .6         .01                                                                                                                                                                                                                                                                                        
19-JUN-15 05.00.28.252 PM                                                        94.54       4.13       1.33           0                                                                                                                                                                                                                                                                                        
19-JUN-15 06.00.32.564 PM                                                        89.79        8.2          2         .01                                                                                                                                                                                                                                                                                        
19-JUN-15 07.00.01.336 PM                                                         98.6         .8        .59         .01                                                                                                                                                                                                                                                                                        
19-JUN-15 08.00.05.105 PM                                                        98.76        .68        .55         .01                                                                                                                                                                                                                                                                                        
19-JUN-15 09.00.07.931 PM                                                        96.08       3.29        .62         .01                                                                                                                                                                                                                                                                                        
19-JUN-15 10.00.10.508 PM                                                        97.87       1.57        .56         .01  

这将仅在上午9点到下午5点之间累积每天的空闲时间。16与24小时时间格式的下午5点以下相同

Select TRUNC(BEGIN_INTERVAL_TIME) as BEGIN_DATE,
AVG(IDLE_TIME) as AVG_IDLE_TIME
From tbl 
Where TO_CHAR(BEGIN_INTERVAL_TIME, 'HH24') Between 9 and 16
Group by TRUNC(BEGIN_INTERVAL_TIME)

基本总量如相关问题所示:

select trunc(begin_interval_time) as day,
  avg(idle_time) as avg_idle,
  100 - avg(idle_time) as avg_busy
from your_table
group by trunc(begin_interval_time)
order by trunc(begin_interval_time);

DAY          AVG_IDLE   AVG_BUSY
---------- ---------- ----------
2015-06-18 97.4926316 2.50736842
2015-06-19 97.5113043 2.48869565
这将“忙碌”视为空闲的对立面;您可以将其他三个值相加:

avg(user_time + sys_time + iowait_time) as avg_busy
但这两个值加起来通常不会精确到100,因为值的精度不够高

假设“上午9点到下午5点之间”是指从09:00:00.000到16:59:59.999,您可以只筛选9到16之间的时间:

select trunc(begin_interval_time) as day,
  avg(idle_time) as avg_idle,
  100 - avg(idle_time) as avg_busy
from your_table
where extract(hour from begin_interval_time) between 9 and 16
group by trunc(begin_interval_time)
order by trunc(begin_interval_time);

DAY          AVG_IDLE   AVG_BUSY
---------- ---------- ----------
2015-06-18   97.90875    2.09125
2015-06-19   98.00125    1.99875
如果您想查看工作时间和非工作时间,可以使用case表达式:

select trunc(begin_interval_time) as day,
  avg(case when extract(hour from begin_interval_time)
    between 9 and 16 then idle_time end) as avg_idle_work,
  100 - avg(case when extract(hour from begin_interval_time)
    between 9 and 16 then idle_time end) as avg_busy_work,
  avg(case when extract(hour from begin_interval_time)
    not between 9 and 16 then idle_time end) as avg_idle_non_work,
  100 - avg(case when extract(hour from begin_interval_time)
    not between 9 and 16 then idle_time end) as avg_busy_non_work
from your_table
group by trunc(begin_interval_time)
order by trunc(begin_interval_time);

DAY        AVG_IDLE_WORK AVG_BUSY_WORK AVG_IDLE_NON_WORK AVG_BUSY_NON_WORK
---------- ------------- ------------- ----------------- -----------------
2015-06-18      97.90875       2.09125             97.19              2.81
2015-06-19      98.00125       1.99875             97.25              2.75
如果这不是工作时间的真正含义,您可以修改
extract()
调用,将其拆分到需要的任何位置



您可能希望在计算过程中稍微调整时间,具体取决于时间戳所代表的内容;e、 g.截断到小时水平,然后可能减去一小时。这取决于说“19-JUN-15 12.00.10.329 AM”是否算在18或19号。如果你只关注工作时间,这可能无关紧要,而且你可能根本不在乎……

只要抛出一个数字,空闲时间的平均值可能是97%?不要只关注按天分组的列的平均值(缩短的间隔时间)?或者调整一个小时,取决于时间代表什么和你想看什么?是的,这是可能的。你能分享一下sql应该是什么样子吗?我可能需要修改它来区分营业时间和非营业时间。@ USE1595858 -什么?绝对是我需要的。我找到了一个警告,它也把周末当作工作日。如果您使用的是第二个查询,那么在一周中的某一天添加一个过滤器就很容易了(记住NLS设置;D元素根据您所在的位置而变化,使用DY或day需要指定语言)。如果使用第三个,可以将其合并到case表达式中,这会有点混乱。但是,这只适用于周末,而不适用于节假日——通常有一个查找表来识别这些假期。