有时候,我们需要查看自己刚刚执行的SQL,但是已经被我们删掉了,有什么办法呢。可以通过以下SQL查询。
SELECT
sql_text --sql语句
,last_load_time --最后加载时间
FROM v$sql
WHERE 1=1
and sql_text like ''--你需要匹配的SQL语句,可以只写一部分,比如 select%
ORDER BY last_load_time DESC
注意:如果一个相同的SQL,你执行了几遍的话,那么此SQL只能查出一条记录,且此记录为你第一次执行的情况。
引申:如何查询最耗性能的SQL:使用如下的SQL即可
select * from
(select parsing_user_id,executions,sorts,command_type,disk_reads,sql_text from v$sqlarea
order by disk_reads desc )
where rownum<10 --这里可以调整查出几个