我对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),即查询的总成本?
答案 0 :(得分:7)
成本为3,计划显示为层次结构,子组件的成本已包含在父组件中。
答案 1 :(得分:3)
您可能还想看一下对以下内容的一些回复: How do you interpret a query's explain plan?