set lines 130
set verify off
accept v_begin_time prompt ‘Enter BEGIN_TIME DD-MON-YY HH24:MI:SS->’
accept v_end_time prompt ‘Enter END_TIME DD-MON-YY HH24:MI:SS->’
DECLARE
lv_v_version_count dba_hist_sqlstat.version_count%TYPE;
lv_n_cnt NUMBER := 0;
BEGIN
FOR c1 IN
(SELECT TO_CHAR (begin_interval_time, ‘DD/MON/YY:HH24’) sun,TO_CHAR (begin_interval_time + (1/24), ‘DD/MON/YY:HH24’) sun1
FROM dba_hist_snapshot
WHERE begin_interval_time BETWEEN TO_DATE (‘&v_begin_time’,
‘DD-MON-YYYY HH24:MI’
)
– 1 / 24
AND TO_DATE (‘&v_end_time’,
‘DD-MON-YYYY HH24:MI’
)order by 1)
LOOP
BEGIN
–dbms_output.put_line (c1.sun);
select sum(sum(version_count))
into lv_v_version_count
from dba_hist_sqlstat a, dba_hist_snapshot b, dba_hist_sqltext c
where a.SNAP_ID = b.SNAP_ID
and a.sql_id = c.sql_id
and BEGIN_INTERVAL_TIME >= to_date(c1.sun, ‘DD-MON-YY:HH24:MI’)
and BEGIN_INTERVAL_TIME <= to_date(c1.sun1, ‘DD-MON-YY:HH24:MI’)
group by a.version_count;
lv_n_cnt := lv_n_cnt + 1;
DBMS_OUTPUT.put_line (c1.sun ||’ ‘||lv_v_version_count);
EXCEPTION
WHEN NO_DATA_FOUND
THEN
DBMS_OUTPUT.put_line (‘No Data Found’);
WHEN OTHERS
THEN
DBMS_OUTPUT.put_line (‘When Others Error’);
END;
END LOOP;
END;
/
07/FEB/13:07 5342
07/FEB/13:08 6575
07/FEB/13:09 6675
07/FEB/13:10 9361
07/FEB/13:11 8042
07/FEB/13:12 8224