当我在Toad中执行一个返回超过500行的查询时,左下角的毫秒数是否表示执行整个查询或获取500行所需的时间?
例如,上面的查询返回7000行。整个查询是否需要1000毫秒,或者只是获取500行的行为?
答案 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)