查内存中缓存的sql

select t.HASH_VALUE  from v$sqlarea t; --sql_text 最多可以1000个字符 肯能有些sql 显示不完整
--根据SELECT * FROM v$sqlarea中找到hash_value  查完整sql
SELECT * FROM v$sqltext WHERE hash_value = '&hash_value' ORDER BY piece;

v$sqltext存储的是完整的SQL,SQL被分割

v$sqlarea --------- 存储的SQL 和一些相关的信息,比如累计的执行次数,逻辑读,物理读等统计信息

v$sql ---------- 存储的是具体的SQL 和执行计划相关信息,实际上,v$sqlarea 可以看做 v$sql 根据 sqltext 等 做了 group by 之后的信息

select * from v$sql_plan --执行计划

 

你可能感兴趣的:(sql)