暂无图片
暂无图片
暂无图片
暂无图片
暂无图片

获取执行计划之explain plan for

程序猿的向往 2021-04-08
1903


点击上方

蓝字

关注我们




示    例


explain plan for select * from emp;
select * from table(dbms_xplan.display());


explain plan命令通常和dbms_xplan.display()命令结合使用


PL/SQL Developer中F5快捷键的原理就是调用explain plan命令



原    理



explain plan 命令的原理是Oracle将目标SQL所产生的执行计划写入PLAN_TABLE$(ON COMMIT PRESERVE ROWS 的 GLOBAL TEMPORARY TABLE 即会话级临时表仅对当前会话有效)然后再通过dbms_xplan.display()命令将PLAN_TABLE$中的具体执行步骤格式化显示出来



优    缺    点


优    点


无需真正执行,快捷方便


缺    点


没有输出相关统计信息


无法判断是处理了多少行


无法判断表被访问了多少次


当使用explain plan for 获得含有bind变量sql语句的执行计划时,是不可靠的,explain plan for不会peeking bind值



往期推荐



获取执行计划之Autotrace



扫码

长按关注

关注

惊喜不断


文章转载自程序猿的向往,如果涉嫌侵权,请发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论