oracle 执行计划

执行计划是用来分析sql语句的执行过程的,如果你想知道sql语句是如何执行,或者你发现你给表建了索引,但是

似乎没起到任何作用,那么你就应该启用执行计划来分析它了。


1. 如果你已经安装好了执行计划,那么直接在SQL/PLUS里边输入如下的命令即可看到结果。


SQL> set autotrace on;
SQL> set timing on;

2.如果你没有安装,输入如上命令会出现如下的错误提示:


SQL> set autotrace on;
SP2-0613: 无法验证 PLAN_TABLE 格式或实体
SP2-0611: 启用EXPLAIN报告时出错

这就是执行计划没有安装好,可以参看这篇文章(http://www.searchdatabase.com.cn/showContent_12508.htm)安装,里面讲的非常的仔细。

3.成功安装后,执行结果如下:

SQL> select /*+index(tb_clfb,inde_tb_clfb)*/ count(*) from tb_clfb where cc='43041';

COUNT(*)
----------
14

已用时间: 00: 00: 00.01

Execution Plan
----------------------------------------------------------
0 SELECT STATEMENT Optimizer=CHOOSE (Cost=2 Card=1 Bytes=12)
1 0 SORT (AGGREGATE)
2 1 INDEX (RANGE SCAN) OF 'INDE_TB_CLFB' (NON-UNIQUE) (Cost=
2 Card=907 Bytes=10884)


Statistics
----------------------------------------------------------
36 recursive calls
0 db block gets
7 consistent gets
0 physical reads
0 redo size
376 bytes sent via SQL*Net to client
503 bytes received via SQL*Net from client
2 SQL*Net roundtrips to/from client
0 sorts (memory)
0 sorts (disk)
1 rows processed

4.关于各个参数的意思,http://www.searchdatabase.com.cn/showContent_12508.htm,这篇文章里讲的也

很仔细,如果大家感兴趣,可以仔细的研究。

原文地址:https://www.cnblogs.com/lan0725/p/1873937.html