ITPub博客

首页 > Linux操作系统 > Linux操作系统 > 分页查询,CBO评估的行数有误。

分页查询,CBO评估的行数有误。

原创 Linux操作系统 作者:wei-xh 时间:2010-08-27 13:02:41 0 删除 编辑

SQL> select * from v$version;

BANNER
----------------------------------------------------------------
Oracle Database 10g Enterprise Edition Release 10.2.0.1.0 - Prod
PL/SQL Release 10.2.0.1.0 - Production
CORE    10.2.0.1.0      Production
TNS for 32-bit Windows: Version 10.2.0.1.0 - Production
NLSRTL Version 10.2.0.1.0 - Production

 

SELECT /*+ gather_plan_statistics */ OBJECT_ID, OBJECT_NAME
FROM
(
SELECT ROWNUM RN, OBJECT_ID, OBJECT_NAME
FROM
(
SELECT OBJECT_ID, OBJECT_NAME FROM T ORDER BY OBJECT_NAME
)
WHERE ROWNUM <= 3000
 )
 WHERE RN >= 2990

 

SQL> select * from table(dbms_xplan.display_cursor(null,null,'iostats'));

PLAN_TABLE_OUTPUT
--------------------------------------------------------------------------------------------
----------------------------
SQL_ID  gtm8xfbtqdwac, child number 0
-------------------------------------
SELECT /*+ gather_plan_statistics */ OBJECT_ID, OBJECT_NAME FROM ( SELECT ROWNUM
RN, OBJECT_ID, OBJECT_NAME FROM ( SELECT OBJECT_ID, OBJECT_NAME FROM T ORDER BY
OBJECT_NAME ) WHERE ROWNUM <= 3000  )  WHERE RN >= 2990

Plan hash value: 882605040

-------------------------------------------------------------------------------------------
| Id  | Operation                | Name | Starts | E-Rows | A-Rows |   A-Time   | Buffers |
-------------------------------------------------------------------------------------------
|*  1 |  VIEW                    |      |      1 |   3000 |     11 |00:00:00.02 |     696 |
|*  2 |   COUNT STOPKEY          |      |      1 |        |   3000 |00:00:00.03 |     696 |
|   3 |    VIEW                  |      |      1 |  50325 |   3000 |00:00:00.03 |     696 |
|*  4 |     SORT ORDER BY STOPKEY|      |      1 |  50325 |   3000 |00:00:00.03 |     696 |
|   5 |      TABLE ACCESS FULL   | T    |      1 |  50325 |  50325 |00:00:00.05 |     696 |
-------------------------------------------------------------------------------------------

Predicate Information (identified by operation id):
---------------------------------------------------

   1 - filter("RN">=2990)
   2 - filter(ROWNUM<=3000)
   4 - filter(ROWNUM<=3000)

 

看ID=4的A-ROWS ,E-ROWS。

 

来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/22034023/viewspace-671978/ ,如需转载,请注明出处,否则将追究法律责任。

请登录后发表评论 登录
全部评论
Oracle ACE组成员,DBGeeK用户组发起人。曾在DTCC、ORACLE技术嘉年华、Gdevops等公开场合做过数据库技术专题分享,2017年应Oracle邀请在世界最大的数据库会议OOW上做技术分享。组织翻译了《拨云见日,解密Oracle ASM内核》一书。

注册时间:2009-07-04

  • 博文量
    422
  • 访问量
    2425330