我有一個腳本:的Oracle SQL聚合功能
select
regexp_replace(b.username, '[0-9]', '') username, a.wait_class, count(*)
from
v$active_session_history a, dba_users b
where
a.user_id=b.user_id and
a.sample_time>sysdate - &minutes/1440
group by
regexp_replace(b.username, '[0-9]', ''), a.wait_class
order by
3 desc
,其輸出是一樣的東西:
USERNAME WAIT_CLASS COUNT(*)
UMESS Commit 139
VITPOINT User I/O 126
VITPOINT <NULL> 69
我怎麼把它分解成HOURLY段,從而使輸出的樣子:
USERNAME START TIME WAIT_CLASS COUNT(*)
UMESS 10:00:00 Commit 66
UMESS 11:00:00 Commit 73
VITPOINT 10:00:00 User I/O 62
VITPOINT 11:00:00 User I/O 64
etc
我想的時間間隔是一個&以分鐘輸入的變量。因此,如果60分鐘是輸入,則間隔是每小時一次。
謝謝
這兩種解決方案工作,但我喜歡這一個多在桶中的主分割間隔。感謝您的努力! – sandman