问题是这样的:
  1 sql> r
  2   1  select count(*)
  3   2  from t_edu_member_info
  4   3* where status='1' and xs_zy='1'
  01 执行计划
  02 -------------------------------------------------------------------------------------------
  03    0      SELECT STATEMENT Optimizer=ALL_ROWS (Cost=1 Card=1 Bytes=10)
  04    1    0   SORT (AGGREGATE)
  05    2    1     FILTER
  06    3    2       INDEX (RANGE SCAN) OF 'IND_T_PREBM4' (NON-UNIQUE) (Cost=1 Card=5 Bytes=50)
  07
  08 统计信息
  09 ----------------------------------------------------------
  10          25  recursive calls
  11          14  db block gets
  12           3  consistent gets
  13           1  physical reads
  14         972  redo size
  15         375  bytes sent via 
SQL*Net to client
  16         372  bytes received via 
SQL*Net from client
  17           2  SQL*Net roundtrips to/from client
  18           1  sorts (memory)
  19           0  sorts (disk)
  20           1  rows processed
  这个结果已经跑了几次
,但是 recursive calls 依然存在
,后来从10046事件产生的trace文件中到了线索
。用tkprof格式化trace文件后,可以看到:
  1 select count(*)
  2 from t_edu_member_info
  3 where status='1'
  4 and xs_zy='1'
  01 call     count       cpu    elapsed       disk      query    current        rows
  02 ------- ------  -------- ---------- ---------- ---------- ----------  ----------
  03 Parse        1      0.01       0.00          0          0          0           0
  04 Execute      1      0.78       0.90