Oracle——怎么查看执行计划

 2024-03-03 20:39:52  阅读 0

1.哪些是执行计划

所谓执行计划就是句子的执行路径,或则说是程序的执行方法。就是对一个任务,作出一份如何去完成任务的详尽方案。举个事例,从上海到南京,可以有好多种选择,可以坐上海到北京的复兴号,也可以先到上海,再从上海转至上海,也可以先到南京,再转至上海。并且究竟如何去才划算,我们要考虑成本(cost),成本越低越实惠。同样对于查询而言,我们递交的SQL仅仅是描述出了我们的目的,但至于如何去执行,一般我们的SQL中是没有给出提示信息的,是由数据库来决定的。有一些自身测度去判定最终的句子执行计划.

2.执行计划的获取

执行计划的获取可以分为以下三种形式

1.SQL形式

2.形式

3.数据库顾客端工具

下边对三种形式进行演示.

2.1.SQL方法获取执行计划2.1.1.生成执行计划

执行以下句子:

此句子可以生成句子的执行计划,还不会展示,展示执行可以执行以下句子(要与前面的句子在同一个联接中执行)

前面的是执行句子,下边是展示的结果.红示方框中的cost就是我们要考虑的成本.

2.2.方法获取执行计划

打开

执行句子set(此句子执行完成不会有任何提示),之后再执行你要查看执行计划的句子.

可以看见句子不但生成的执行计划,还生成了一些统计信息。

里面用到了set句子,这个句子的完整用法如下.

SETAUTOT[RACE]{OFF|ON|TRACE[ONLY]}[EXP[LAIN]][STAT[]]

示例:

2.3.顾客端工具

每位顾客端工具显示执行计划的形式都不相同,下边用最常用的plsql作为演示:

打开PLSQL顾客端,联接数据库,执行前面的几个操作,就是打开了一个执行计划窗口.

在这个窗口里可以执行你要查看的句子。

里面介绍了三种获取执行计划的形式,从执行计划里可以看见一个检测方法:INDEXRANGESCAN,除此之外还有FULLTABLESCANS,INDEXSCAN,INDEXFULLSCAN,INDEXFASTFULLSCAN,在表联接的情况下还有一些联接形式,SortMergeJoin,Loops,HashJoin,之后会逐渐的对那些进行逐一的介绍,欢迎关注.

如本站内容信息有侵犯到您的权益请联系我们删除,谢谢!!


Copyright © 2020 All Rights Reserved 京ICP5741267-1号 统计代码