解释Toad的查询时间超过500行

时间:2013-09-26 17:52:18

标签: sql oracle oracle11g toad

当我在Toad中执行一个返回超过500行的查询时,左下角的毫秒数是否表示执行整个查询或获取500行所需的时间?

enter image description here

例如,上面的查询返回7000行。整个查询是否需要1000毫秒,或者只是获取500行的行为?

1 个答案:

答案 0 :(得分:2)

默认情况下,Toad似乎只提取前500个记录并停止。

这可以通过跟踪TOAD会话并创建生成的跟踪文件的tkprof报告来确认。

在我的测试用例中,我创建了一个包含一百万行的表:

 create table a_million_rows as
 select rownum as x
   from dual
connect by level <= 1000000;

然后,我在Toad中运行了select * from a_million_rows语句。

根据tkprof报告,只从数据库中检索了501行:

select *
from
 a_million_rows


call     count       cpu    elapsed       disk      query    current        rows
------- ------  -------- ---------- ---------- ---------- ----------  ----------
Parse        1      0.00       0.00          0          0          0           0
Execute      1      0.00       0.00          0          0          0           0
Fetch        1      0.00       0.00          5          4          0         501
------- ------  -------- ---------- ---------- ---------- ----------  ----------
total        3      0.00       0.00          5          4          0         501

Misses in library cache during parse: 0
Optimizer mode: ALL_ROWS
Parsing user id: 93

Rows     Row Source Operation
-------  ---------------------------------------------------
    501  TABLE ACCESS FULL A_MILLION_ROWS (cr=4 pr=5 pw=0 time=0 us cost=35 size=13951951 card=1073227)