第二讲:pl/sql工具查看执行计划
1. 使用pl/sql工具查看执行计划很简单;写完sql,按一下F5即可

注意:
1.和sqlplus相比,该工具的执行计划少了 统计部分,只列出部分统计信息
2.和sqlplus相比,该工具的执行计划只是对要执行的sql进行预编译统计,不是真正的执行;所以,统计数据不如sqlplus准确.
3.该工具对你查看sql 执行时,了解oracle会选择什么样的优化器 比较快捷.
4.通过该工具查看sql执行时间是不准确的,因为它每次查询 不是显示表的全部数据条数,而是只列出屏幕能显示的数据条数;
只有点“显示全部条数”时,才是真正的执行时间。
2. 双表之间的执行计划

3.pl/sql 工具其实也可以查看sql执行计划的统计情况,需要依赖dbms_xplan 包才可以.


说明:
1. 第10行的"*",代表hash join 时,有过滤条件; 及 第18行的条件.
2. 第20行,有2个note说明:讲的意思是, 因为t、t2 表的数据没有经过oracle自身自动的统计分析,所以本次查询,使用的是
简单动态查询;如果使用带统计的查询,需要使用“gather_plan_statistics” hint.
带“gather_plan_statistics” hint 的执行计划如下:

说明:1.未使用统计时,T表的Rows =1,统计后是198(准确数也是198); 2者差别比较大;这就说明,统计后的执行计划比较准确.
2.Bytes 15642 是逻辑读
3.和在sqlplus里面的执行计划比较一下,是一致的

浙公网安备 33010602011771号