OracleRownum分页改写

Oracle Rownum分页改写

专注于为中小企业提供成都网站制作、做网站服务,电脑端+手机端+微信端的三站合一,更高效的管理,为中小企业港南免费做网站提供优质的服务。我们立足成都,凝聚了一批互联网行业人才,有力地推动了上1000家企业的稳健成长,帮助中小企业通过网站建设实现规模扩充和转变。

---说明:案例来自《   收获,不止SQL优化》

创建测试数据:

---drop table test_rownum purge;

SQL >   create   table  test_rownum as   select   *   from  dba_objects ;

SQL >   select   count (*)   from  test_rownum ;   ---75793

SQL >   alter   session   set  statistics_level = all   ;

SQL >   set  linesize 1000

SQL >   set  pagesize 500

分页写法 1 :

SQL >   select   *   from   ( select  t. *, rownum   as  rn   from  test_rownum t )  a where  a.rn >= 1   and  a.rn <= 10 ;

查看执行计划:

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

Oracle Rownum分页改写

分页写法 2 :

SQL >   select   *   from   ( select  t. *, rownum   as  rn   from  test_rownum t where   rownum <= 10 )  a where  a.rn >= 1 ;   

查看执行计划:

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

Oracle Rownum分页改写

总结: 写法1的buffer为1080,扫描真实数据为75793条,写法2的buffer只有5,扫描真实数据为10条,性能较写法1有很大改善。

欢迎关注我的微信公众号"IT小Chen",共同学习,共同成长!!!

Oracle Rownum分页改写


新闻标题:OracleRownum分页改写
文章URL:http://csruizhi.cn/article/pdgdgs.html

其他资讯

Copyright © 2007-2024 成都优众联杰科技有限公司 All Rights Reserved 蜀ICP备2024116266号
友情链接: 成都网站建设 成都定制网站建设 成都网站建设公司 成都网站建设 高端网站设计 定制级高端网站建设 成都网站制作 网站制作 成都企业网站建设公司 外贸营销网站建设 成都响应式网站建设公司 成都网站建设 重庆企业网站建设 重庆网站建设 网站制作公司 app网站建设 网站建设推广 网站制作 成都网站建设 成都网站设计制作公司 高端定制网站设计 H5网站制作