`

oracle3种分页总结

阅读更多
  • 1.通过rowid来分页


select e.*
  from emp e
 where rowid in
       (select rid
          from (select rownum rn, rid
                  from (select rowid rid, e.sal from emp e order by sal)
                 where rownum < 14)
         where rn > 4)
 order by sal;



  • 2.按rownum来分


select * from (select t.*, rownum rn
                  from (select * from emp order by sal) t
                 where rownum < 14)
  where rn > 4;



  • 3. 按分析函数来分


select *
   from (select e.*, row_number() over(order by sal) ro from emp e)
  where ro < 14
    and ro > 4;


一般如果存在模糊查询 ,建议放到第一层sql里面
select *
   from (select e.*, row_number() over(order by sal) ro 
               from emp e  where  e.xxx LIKE ‘%'  +  xxxxx + ‘%’)
  where ro < 14
    and ro > 4;




如果数据量足够大的话,通过测试很明显的可以比较出来使用rowid来分页效率要快,rownum次之,


计算分页的总数
select count(msisdn)
  from (select *
          from (select t.*, rownum rn
                  from (select msisdn from dm_iread.dm_user_pack_relation) t
                 where rownum <= 1)
         where rn > 0
        )



  • 大小: 22.9 KB
分享到:
评论

相关推荐

    Oracle 3种分页SQL方法比较

    本文将详细探讨三种常用的Oracle分页SQL方法:ROWNUM、ROWNUM结合子查询以及新引入的Oracle 12c的FETCH NEXT WITH OFFSET语法。这三种方法各有优缺点,适用于不同的场景。 1. ROWNUM方法: ROWNUM是Oracle中最基础...

    Oracle&JSP分页和Oracle分页

    总结来说,Oracle和JSP结合实现分页涉及以下几个步骤:在Oracle中构造分页查询,使用JDBC在Servlet中执行查询,然后在JSP页面中展示数据。理解并熟练掌握这些步骤对于开发高效、用户友好的数据驱动网站至关重要。在...

    Oracle 存储过程分页

    总结,Oracle 存储过程中的分页实现有很多种方式,包括ROWNUM、ROW_NUMBER()、CTE、FETCH FIRST子句,以及JOIN和游标等。选择哪种方法取决于具体的需求,如数据库版本、性能需求、查询复杂性等因素。正确使用分页...

    Oracle存储过程分页

    在Oracle数据库中,实现分页查询通常有两种方法:一种是使用`ROWNUM`伪列,另一种则是通过存储过程实现。其中,使用存储过程进行分页更加灵活且易于维护。 #### 二、存储过程分页的优势 1. **提高性能**:存储过程...

    Oracle分页(limit方式的运用)

    ### Oracle分页(LIMIT方式的运用) 在数据库查询操作中,分页是非常常见的需求之一,尤其是在数据量较大的情况下,为了提高用户体验以及减轻服务器压力,我们需要将数据分成若干个页面进行展示。Oracle数据库作为...

    mysql分页,oracle分页,sql server三种数据库实现分页

    mysql,oracle,sql server分页总结与比较

    oracle的分页查询

    Oracle 的分页查询 在 Oracle 中,分页查询是非常常见的需求,但是在使用查询条件时又不能使用大于号(&gt;)。本文将讲解 Oracle 中的分页查询,包括使用 ROWNUM 伪列和 ORDER BY 子句对查询结果进行排序和分页。 一...

    ssh+oracle分页

    总结来说,“ssh+oracle分页”涉及了SSH框架整合、数据库操作、前端展示等多个环节,需要综合运用各种技术和工具,确保数据分页的高效性和用户体验。理解并掌握这些知识点,对提升Java Web开发者的能力大有裨益。

    JAVA_JDBC面向对象分页(初步设计二之oracle)

    总结来说,面向对象的Java JDBC分页查询涉及到创建Page类来存储分页信息,构造Oracle兼容的SQL语句,以及使用PreparedStatement执行查询。在实际开发中,我们还需要关注性能优化、异常处理和代码的可维护性,确保...

    oracle分页查询sql

    ### Oracle分页查询详解 #### 一、分页查询的重要性 在数据库操作中,分页查询是一项非常重要的技术。尤其当处理大量数据时,一次性获取所有数据不仅会消耗大量的网络带宽,还可能导致前端页面加载缓慢,用户体验...

    MyFaces Oracle大数据表分页封装.docx

    总结来说,这个文档提供的分页封装方案通过`DataPage`和`PagedListDataModel`实现了对Oracle大数据表的分页处理,使得在JSF应用中可以高效地展示和操作大数据集。同时,需要注意优化查询策略以避免重复查询,提升...

    Oracle分页

    总结,Oracle分页结合Servlet、AJAX、JSON和jQuery可以构建出高性能、用户体验良好的分页应用。Servlet处理后端逻辑和数据交互,AJAX实现前后端无刷新通信,JSON作为数据交换格式,而jQuery则负责前端的数据解析和...

    oracle分页程序的实现

    另一种方法是通过子查询和自连接来实现分页,这种方法适用于旧版本的Oracle数据库(不支持ROW_NUMBER())。假设我们要查询第M页的数据,每页有N条记录,可以这样做: ```sql SELECT t1.* FROM your_table t1, ...

    oracle 分页语句

    ### Oracle分页查询详解 在Oracle数据库中,实现分页查询是常见的需求之一。通过合理的分页查询可以提高数据检索的效率,优化用户体验。本文将详细介绍一个特定的Oracle分页查询语句:“`select * from (select a.*...

    Oracle分页详解

    ### Oracle分页详解 在数据库应用开发中,为了提高用户体验并优化系统性能,分页查询是一种常见的技术手段。本文将详细介绍如何在Oracle数据库中实现高效、灵活的分页功能。 #### 一、Oracle分页原理 Oracle中的...

    jsp+JavaBean+Servlet_Oracle和Mysql分页

    项目中的"pagination_4_Oracle"可能包含了Oracle分页的具体实现。 5. MySQL数据库分页:MySQL提供了LIMIT关键字,可以直接配合OFFSET实现分页查询。在Java中,通过调整LIMIT子句的参数即可实现不同页码的数据获取。...

    oracle包用存储过程图分页

    - **定义**:在Oracle数据库中,包是一种组织PL/SQL代码的方式。它类似于其他编程语言中的模块或类,可以将相关的类型定义、变量声明、函数、存储过程等封装在一起。 - **作用**:包能够提高代码的可维护性和重用性...

    Oracle 分页的存储过程

    总结来说,Oracle分页存储过程是通过动态构造SQL语句,结合输入的分页参数,计算出总页数,并返回指定页的数据。这种方式在处理大量数据时提高了效率,同时也提供了灵活的查询控制。通过包装这些逻辑在存储过程中,...

    sturts+oracle+jdbc实现分页

    总结来说,"sturts+oracle+jdbc实现分页"是一个典型的Java Web开发任务,涉及到Struts框架、Oracle数据库操作和JDBC技术的综合运用。通过编写Action类处理请求,利用Oracle的ROWNUM进行分页查询,并通过JDBC接口与...

    Oracle SQL语句分页问题

    根据题目给出的部分内容,可以看出作者尝试使用一种类似于T-SQL(SQL Server)中的`TOP`关键字的方法来进行分页处理。然而,在Oracle中这种方法并不可行。下面是对这段代码的解析与优化建议: ```sql -- 原始代码 ...

Global site tag (gtag.js) - Google Analytics