Oracle 解释计划中的时间不一致

Inconsistent Time in Oracle Explain Plan

我有以下查询,其 EXPLAIN PLAN 如下所示。

查询耗时2.3秒。

但是 EXPLAIN PLAN 显示 INDEX FAST FULL SCAN 显示时间 = 00:10:06 秒

有什么原因吗?

select count(*) from c1
COUNT(*)
----------
  68656440

Elapsed: 00:00:02.31

Execution Plan
----------------------------------------------------------
Plan hash value: 2610173813

-------------------------------------------------------------------------
| Id  | Operation             | Name    | Rows  | Cost (%CPU)| Time     |
-------------------------------------------------------------------------
|   0 | SELECT STATEMENT      |         |     1 | 50450   (1)| 00:10:06 |
|   1 |  SORT AGGREGATE       |         |     1 |            |          |
|   2 |   INDEX FAST FULL SCAN| PF_TEST |    83M| 50450   (1)| 00:10:06 |
-------------------------------------------------------------------------

Note
-----

- 用于此语句的动态采样(级别=2)

统计


      0  recursive calls
      0  db block gets
 185865  consistent gets
 185820  physical reads
      0  redo size
    529  bytes sent via SQL*Net to client
    523  bytes received via SQL*Net from client
      2  SQL*Net roundtrips to/from client
      0  sorts (memory)
      0  sorts (disk)
      1  rows processed

解释计划是对 oracle 认为执行语句所需时间的估计,试试这个:

set timi on
select count(*) from c1;
set timi off

select * from table(dbms_xplan.display_cursor(null,null,'allstats last'));

然后看看A-time栏,准确吗? 应该是。