`
SK.Heman
  • 浏览: 9904 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

Oracle的分页机制

阅读更多
Oracle的分页机制主要不外乎两种方法,
1.使用rownum序列, 这种方法的好处是, 在查找前几页时速度比较快,  缺点时, 查询出来的数据不是完全准确的, 在查询的数据量很大时, 特别是查询最后几页时速度非常慢.
select col1,col2,..,coln
from (
  select rownum rn,col1,col2,....,coln  from
  table_name where ... and rownum <= n)
where rn >= m;

2. 使用Oracle8i开始支持的分析函数 这种方法取出来的数据准确性相当高, 查询效率比较稳定.
建议使用这种方法.
select col1,col2,..,coln from (
  select row_number() over(order by colx desc /asc ) rn, 
  col1,col2,....,coln  from
     table_name
  where ...)
where rn between m and n ;
分享到:
评论
2 楼 lsj8080 2011-12-16  
第一种效率高,第二种效率不如第一种高。
1 楼 lsj8080 2011-12-16  
如果是视图呢?我试过如果是视图的话用第一种方法不行,会出现重复数据,很奇怪,不知道原因,求解???????

相关推荐

    oracle分页,比较简单很好懂

    本篇文章将深入探讨Oracle分页的机制,并提供易于理解的示例。 首先,我们来看SQL标准的`OFFSET-FETCH`和`LIMIT`子句。虽然`LIMIT`不是Oracle的原生语法,但Oracle 12c引入了`FETCH FIRST n ROWS ONLY`和`OFFSET m ...

    spring mvc实现Oracle分页

    本项目着重讲解如何在Spring MVC环境中,结合JDBC技术,实现对Oracle数据库的分页查询功能,并通过Ajax进行动态加载,提升用户体验。此外,我们还将涉及LigerUI和jEditable两个前端库,以增强用户界面和交互性。 ...

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

    本篇文章将重点讨论如何使用Java JDBC和Oracle数据库实现面向对象的分页查询。 首先,我们需要了解面向对象编程的基本概念。面向对象编程(Object-Oriented Programming, OOP)是一种编程范式,强调用对象来表示...

    oracle的分页查询

    Oracle 的分页查询 ...Oracle 中的分页查询可以使用 ROWNUM 伪列和 ORDER BY 子句来实现,但是需要注意 ROWNUP 伪列的生成机制和 ORDER BY 子句的影响。同时,我们也可以使用 ROWID 列来实现真正的分页查询。

    oracle-jdbc分页实现(只需传入sql语句即可实现分页)

    但了解底层的SQL分页机制有助于理解框架的工作原理,也能在必要时进行优化。 在提供的"demo2"文件中,可能包含了一个已经封装好的Oracle JDBC分页实现,你可以查阅这个示例代码,了解具体的实现方式。该示例可能是...

    oracle分页

    Oracle分页通常通过`ROWNUM`或`ROWNUMBER()`函数实现。`ROWNUM`是在查询执行时分配的,而`ROW_NUMBER()`是窗口函数,可以在分组和排序后分配。基本的分页查询可以这样写: ```sql SELECT * FROM ( SELECT ..., ...

    oracle 分页的部分

    本篇将深入探讨Oracle分页查询的实现机制、效率差异以及优化技巧。 在Oracle中,分页查询的基本格式通常采用嵌套查询结构,以下是一个典型的示例: ```sql SELECT * FROM ( SELECT A.*, ROWNUM RN FROM ( ...

    Oracle分页实现

    ### Oracle分页实现方法 #### 方法一:使用ROWNUM ROWNUM是Oracle中的一个伪列,它可以为结果集中的每一行分配一个唯一的行号。利用ROWNUM进行分页的基本思想是在内层查询中筛选出所有需要的数据,然后在外层查询...

    oracle 分页 很棒的sql语句

    因此,分页机制就变得非常重要。通过分页,可以将大量数据分割成多个小页面,每个页面显示固定数量的数据,从而提高查询效率和用户体验。 Oracle 分页的实现方法 Oracle 提供了多种分页实现方法,包括使用 ROWNUM...

    数据库Oracle分页显示技术

    Oracle中实现分页查询的主要方法有两种:ROWNUM和ROW_NUMBER()函数,以及Oracle的高级分页特性——FETCH NEXT和OFFSET。 1. ROWNUM方法:ROWNUM是Oracle中的一个伪列,它表示行的顺序号,从1开始。我们可以结合子...

    oracle 高效分页

    虽然`ROW_NUMBER()`提供了更灵活的分页机制,但在某些情况下,其性能可能不如直接使用`ROWNUM`。这是因为`ROW_NUMBER()`需要额外的资源来计算行号。然而,在大多数现代Oracle版本中,数据库优化器能够智能地处理这些...

    Oracle分页查询的实例详解

    以下是对Oracle分页查询的实例详解: 1. **Oracle分页查询基础** Oracle分页查询通常涉及ROWNUM伪列的使用。ROWNUM在查询执行过程中为每一行分配一个唯一的数字,从1开始递增。在以下两个示例中,我们可以看到两种...

    PHP实现的oracle分页函数实例

    在数据库应用开发中,分页是一种常见的功能,它...文章提供的代码实例和解释有助于加深对Oracle分页实现机制的理解,并可以在实际开发中使用。掌握这些技巧对于进行数据库操作和开发Web应用的PHP程序员来说十分有用。

    oracle分页(ibatis-2.3.4.726.jar).rar

    综上所述,通过理解Oracle的物理分页机制,并结合iBATIS提供的SQL映射和动态SQL功能,我们可以有效地在Java应用中实现Oracle数据库的高效分页查询。对于老旧的iBATIS版本,这通常是提高大型数据集查询性能的关键。而...

    extjs oracle分页---Json转换

    标题“ExtJS Oracle分页---Json转换”涉及的是在Web应用程序开发中,使用ExtJS框架与Oracle数据库进行分页数据交互,并通过Json格式进行数据转换的技术。以下是对这个主题的详细解释: ExtJS是一个强大的JavaScript...

    struts2+spring+ibatis+oracle+分页搜索+上传附件实例

    Struts2的拦截器机制使得分页和搜索功能得以实现,通过配置拦截器,可以处理请求参数,实现动态的页面跳转和数据检索。 2. **Spring**:Spring框架提供了依赖注入(DI)和面向切面编程(AOP)等功能,帮助开发者管理...

    ssh Struts2.2+Hibernate3.6+Spring3.1+oracle 分页示例.zip

    在这个"ssh Struts2.2+Hibernate3.6+Spring3.1+oracle 分页示例.zip"压缩包中,开发者提供了一个使用这些技术实现的分页功能示例。下面将详细介绍SSH框架以及Oracle数据库的分页技术。 **Struts2** 是一个基于MVC...

    oracle mysql分页源码

    在实际开发中,了解这些机制有助于编写高效且易于维护的分页代码。同时,对于大型数据集,还需要关注性能优化,避免不必要的数据扫描。通过阅读和理解相关的项目源码,可以进一步掌握这些技术在具体应用中的实现细节...

    两个版本Mysql和Oracle的分页标签

    在数据库管理领域,分页查询是一项重要的功能,它...理解这两种数据库的分页机制对于开发高效的数据检索应用至关重要。通过使用分页标签,开发者可以简化代码,提高代码复用性,并确保在各种数据库系统中保持一致性。

    DatabaseHelper_oracle_c#Oracle_C#_ManagedDataAccess_oracle操作_

    需要注意的是,为了提高性能和减少资源消耗,通常会在数据库连接打开后立即执行操作,然后立即关闭,这就是所谓的"连接池"机制,Oracle.ManagedDataAccess库默认支持这一机制。 总之,"DatabaseHelper_oracle_c#...

Global site tag (gtag.js) - Google Analytics