通过Oracle解释计划进行查询的总成本

时间:2011-05-01 20:45:23

标签: sql database oracle oracle11g

我对Oracle有点新意,我对Oracle的解释计划有疑问。我已经为特定查询使用了“自动跟踪”功能。

SQL> SELECT *来自myTable; 选择了11行。 经过时间:00:00:00.01

Execution Plan
----------------------------------------------------------
Plan hash value: 1233351234

----------------------------------------------------------------------------
| Id  | Operation         | Name   | Rows  | Bytes | Cost (%CPU)| Time     |
----------------------------------------------------------------------------
|   0 | SELECT STATEMENT  |        |    11 |   330 |     3   (0)| 00:00:01 |
|   1 |  TABLE ACCESS FULL| MYTABLE|    11 |   330 |     3   (0)| 00:00:01 |
----------------------------------------------------------------------------

我的问题是,如果我想计算此查询的“总”成本,是6(3 + 3)还是仅3。假设我有更大的查询,计划中有更多步骤,我是否需要将成本列中的所有值相加以获得总成本,或者它是第一个值(ID = 0),即查询的总成本?

2 个答案:

答案 0 :(得分:7)

成本为3,计划显示为层次结构,子组件的成本已包含在父组件中。

答案 1 :(得分:3)

您可能还想看一下对以下内容的一些回复: How do you interpret a query's explain plan?