1.在pl/sql中打开cmd命令容器 2.在cmd命令窗口中输入:explain plan for select * from t; 3.查看sql语句的执行计划:select * from table(dbms_xplan.display); MISSES IN library cache during parse:1 翻译:发生在解析的硬解析数量为1,表示硬解析 MISSES IN library cache during parse:0 翻译:发生在解析的硬解析数量为0,表示没有硬解析,…
内容主要来自看书学习的笔记,如下记录了常见查询执行计划的方法. 2.2 如何查看执行计划 1.explain plan 2.dbms_xplan包 3.autotrace 4.10046事件 5.10053事件 6.awr/statspack报告(@?/rdbms/admin/awrsqrpt) 7.脚本(display_cursor_9i.sql) 2.2.1 explain plan explain plan for sql select * from table(dbms_xplan.di…
以下是对Oracle中获取执行计划的几种方法进行了详细的分析介绍,需要的朋友可以参考下 1. 预估执行计划 - Explain PlanExplain plan以SQL语句作为输入,得到这条SQL语句的执行计划,并将执行计划输出存储到计划表中. 首先,在你要执行的SQL语句前加explain plan for,此时将生成的执行计划存储到计划表中,语句如下:explain plan for SQL语句然后,在计划表中查询刚刚生成的执行计划,语句如下:select * from table(…
1. 通过dbms_xplan.display_cursor查看指定sql都有哪些执行计划 SQL> select * from table(dbms_xplan.display_cursor('&sql_id',null,'TYPICAL PEEKED_BINDS')); 2. 查询该sql的历史执行情况 SQL> col snap_id for 99999999 SQL> col date_time for a30 SQL> col plan_hash for 9999…
ORACLE数据库中,我们会使用一些SQL语句找出存在隐式转换的问题SQL,其中网上流传的一个SQL语句如下,查询V$SQL_PLAN的字段FILTER_PREDICATES中是否存在INTERNAL_FUNCTION: SELECT SQL_ID, PLAN_HASH_VALUE FROM V$SQL_PLAN X WHERE X.FILTER_PREDICATES LIKE '%INTERNAL_FUNCTION%' GROUP BY SQL…