在oracle服务器上的给定时间窗口执行的SQL查询

时间:2011-12-08 16:46:50

标签: oracle plsql

我想知道如何查找在指定时间窗口执行的SQL查询。例如,oracle在2011-07-11:15:20:10执行了什么查询。

感谢。

1 个答案:

答案 0 :(得分:2)

select a.sql_id,dbms_lob.substr(b.sql_text,4000,1) from dba_hist_active_sess_history a, dba_hist_sqltext b
where sample_time between to_date('20110711:15:20','yyyymmdd:hh24:mi')
and to_date('20110711:15:21','yyyymmdd:hh24:mi') and b.sql_id=a.sql_id
union all

select a.sql_id ,dbms_lob.substr(b.sql_text,4000,1)from v$active_session_history a ,v$sqlarea b
where sample_time between to_date('20110711:15:20','yyyymmdd:hh24:mi') and
to_date('20110711:15:21','yyyymmdd:hh24:mi') and b.sql_id=a.sql_id   

Read more: Oracle SQL History | eHow.com

相关问题