《Oracle高性能SQL引擎剖析:SQL优化与调优机制详解》一第2章 解读执行计划

第2章 解读执行计划

我们掌握了获取和显示执行计划的方法后,就可以开始了解如何来读懂一个执行计划。从我们前面的示例中可以发现,一个执行计划实际上是一个树状关系的结构图。在这个树状结构图中,每一个节点代表了一个操作(相应的,它们在PLAN_TABLE、V$SQL_PLAN等执行计划表、视图中都有一条记录),每个支节点(或者说父节点)下都有一个或多个子操作;除根节点外,每个节点都仅隶属于一个支节点。同一层操作按照它们的ID顺序执行。操作由顶向下调用,即父操作调用子操作;数据由底向上返回,即子节点获取到的数据在处理完成后返回给父节点。
提示:请执行脚本02_01_SQL_Explain<版本>.sql创建函数SQL_Explain,注意区分版本。
从前一章的示例中可以看到,执行计划包含了相当丰富的信息。通过执行计划,我们不仅可以知道SQL引擎将以什么样的访问顺序访问对象、获取语句的输出结果,而且还可以获得优化器估算出的代价结果、运行时间以及其他一些额外信息。在本章中,将为读者详细解释执行计划中的内容。阅读完本章以后,读者再拿到任何一个语句的执行计划,都能读懂该执行计划的含义,并能通过它传达给我们的信息来了解SQL执行该语句的过程及性能。
在本章中,我们将会了解到以下内容:
执行计划中存在哪些基本数据及其具体含义;
执行计划操作与Oracle内部函数之间的关系;
执行计划中所有列的具体含义;
执行计划每个数据源操作的具体含义及其示例;
与执行计划相关的其他信息含义。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值