`
butterluo
  • 浏览: 54103 次
  • 性别: Icon_minigender_1
  • 来自: 广州
最近访客 更多访客>>
社区版块
存档分类
最新评论

用于oracle的一种sql分页方法

    博客分类:
  • sql
阅读更多
SELECT *
  FROM (SELECT a.*, ROWNUM row_num
          FROM (SELECT   t1.ajbh, t1.lrajbh, t2.nsrsbh, t2.nsrmc, t4.swjg_mc,
                         t5.jczt_mc,
                         CASE
                            WHEN t1.zgajwcrq IS NOT NULL
                               THEN   TRUNC (SYSDATE)
                                    - TRUNC (t1.zgajwcrq)
                         END AS yqts, ROWNUM row_num1
                    FROM ctais2wg.t03_ctais_ajxx t1,
                         ctais2wg.dj_nsrxx t2,
                         ctais2wg.jc_ajxx t3,
                         ctais2wg.dm_swjg t4,
                         ctais2wg.dm_jczt t5
                   WHERE t1.lrajbh = t3.ajbh
                     AND t2.nsrdzdah = t3.nsrdzdah
                     AND t4.swjg_dm = t3.ajsljg_j_dm
                     AND t5.jczt_dm = t3.jczt_dm
                ORDER BY yqts DESC) a) b
 WHERE b.row_num BETWEEN 1 AND 3

也就是说,把你的查询代码代替以下代码的{#}就可以了
SELECT *
  FROM (SELECT a.*, ROWNUM row_num FROM (
            {#}
        ) a) b
 WHERE b.row_num BETWEEN 1 AND 3

其中 BETWEEN 1 AND 3 是指页中的起始index和结束index
分享到:
评论

相关推荐

    Oracle 3种分页SQL方法比较

    在Oracle数据库中,分页查询是一项常见的操作,用于在大量数据中检索特定部分,而无需加载整个结果集。本文将详细探讨三种常用的Oracle分页SQL方法:ROWNUM、ROWNUM结合子查询以及新引入的Oracle 12c的FETCH NEXT ...

    Oracle的SQL分页实践

    在Oracle数据库中,SQL分页是一种非常常见的查询技术,它允许我们从大量数据中按需获取一部分结果,而不是一次性加载所有记录。这对于提高用户体验和优化系统性能至关重要,尤其是在处理大数据量的Web应用中。本实践...

    SQL Server 存储过程及Oracle SQL语句分页

    对于大型数据库,可能还需要考虑性能优化,例如使用索引,或者使用更高效的分页方法,如Oracle的`ROW_NUMBER()`函数配合`CTE`(公共表表达式)或`OFFSET/FETCH`语法。同时,存储过程也可以结合缓存策略,进一步提升...

    oracle分页查询sql

    基于`ROWNUM`的分页查询是Oracle中最常见的分页方法之一。它通过两层嵌套查询实现,具体格式如下: ```sql SELECT * FROM ( SELECT A.*, ROWNUM RN FROM ( SELECT * FROM TABLE_NAME ) A WHERE ROWNUM ) ...

    三种数据库SQL分页方法详解

    ### 三种数据库SQL分页方法详解 在数据库查询过程中,分页是非常常见且重要的一个功能。它可以帮助我们更高效地处理大量数据,特别是在构建大型应用系统时,分页技术能够显著提升用户体验。本文将详细介绍三种...

    oracle一条sql语句分页

    一种改进的方法是使用`FETCH FIRST n ROWS ONLY`(仅在Oracle 12c及更高版本中可用),这可以显著减少查询时间。 ```sql SELECT * FROM ( SELECT * FROM tables ) WHERE ROWNUM FETCH FIRST endNum ROWS ...

    Oracle与SQL的分页实现

    另一种常见的分页实现是使用子查询和ROWNUM结合的方法,这种方式避免了多次扫描表的问题: ```sql SELECT * FROM ( SELECT t.*, ROWNUM rnum FROM ( SELECT * FROM table_name ORDER BY id ) t WHERE ROWNUM *m ...

    用于oracle,mysql,sqlserver,数据库分页联合查询

    本话题主要聚焦于如何在Oracle、MySQL和SQL Server这三种主流关系型数据库中实现分页联合查询。 首先,我们来看Oracle数据库的分页查询。Oracle使用ROWNUM关键字来实现分页。例如,如果我们想获取第10到20条记录,...

    oracle mysql sqlserver分页

    SQL Server中分页可以通过多种方式实现,其中一种常用的方法是使用`TOP`关键字结合子查询。此外,还可以使用`OFFSET`和`FETCH`关键字来实现更简单的分页查询。 #### 使用TOP关键字: 1. **第一步**:创建一个子...

    Oracle,mysql,sqlserver等各种数据库的分页方法

    本文将详细介绍Oracle、MySQL、SQL Server等常见数据库系统的分页方法。 ### MySQL分页方法 #### 1. 使用`LIMIT`子句 MySQL提供了`LIMIT`子句来实现分页查询。该子句可以接受两个参数:第一个参数为起始行号...

    oracle mysql SQL server分页

    在Oracle中实现分页查询主要依靠`ROWNUM`伪列,这是一种非常简单但功能强大的机制。下面将介绍两种常用的Oracle分页查询方法: 1. **基础分页查询**: ```sql SELECT * FROM ( SELECT t.*, ROWNUM rn FROM ...

    Oracle SQL语句分页问题

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

    sql分页(sqlserver,mysql,oracle )

    但是,更推荐使用`OFFSET/FETCH`语句来实现分页,这是SQL Server 2012及更高版本引入的一种更现代、更简洁的方法: ```sql SELECT * FROM 表 ORDER BY id OFFSET (pageNo-1)*pageSize ROWS FETCH NEXT pageSize ...

    oracle分页查询并返回总记录数据存储过程

    Oracle 数据库提供了多种方法来实现分页查询,其中使用存储过程是一种高效且灵活的方式。本文将详细介绍如何在 Oracle 中创建一个用于分页查询并返回总记录数的存储过程。 #### 核心概念 1. **存储过程**:存储在...

    Oracle&JSP分页和Oracle分页

    另一种更高效的方法是使用Oracle的`ROW_NUMBER()`函数,配合`OVER()`子句,这样可以实现更复杂的分页逻辑。比如,如果我们要查询第5页的数据,每页20条,可以这样写: ```sql SELECT * FROM ( SELECT ROW_NUMBER()...

    sqlserver,mysql,oracle三种数据库的分页查询

    SQL Server提供了一种称为"TOP"的关键字来实现分页。例如,如果我们想获取第1页(假设每页有10条记录)的数据,可以使用如下语句: ```sql SELECT TOP 10 * FROM TableName ORDER BY SomeColumn DESC ``` 这里的`...

    Oracle分页(limit方式的运用)

    其中一种常用的方法就是使用`LIMIT`子句(尽管Oracle数据库本身不直接支持标准SQL中的`LIMIT`关键字,但可以通过其他方式模拟其功能)。本文将详细介绍如何在Oracle中实现类似`LIMIT`的关键字来完成分页查询。 ####...

    ORACLE PL/SQL从入门到精通

    触发器是数据库中用来保证数据完整性的一种特殊存储过程。创建触发器的基本语法是使用CREATE OR REPLACE TRIGGER语句,它可以是BEFORE或AFTER触发器,并且适用于DELETE、INSERT、UPDATE等数据操作。触发器可以细分为...

    Oracle Sql语句转换成Mysql Sql语句

    在数据库管理领域,Oracle SQL和MySQL SQL是两种广泛使用的SQL方言,它们在语法和功能上存在一定的差异。当需要将一个基于Oracle SQL的应用程序迁移到MySQL环境时,就需要进行SQL语句的转换工作。本项目提供了一个...

    oracle的 分页sql语句

    本文详细介绍了在 Oracle 数据库中如何实现分页查询,包括基本的 SQL 语句和存储过程两种方式,并给出了具体的 Java 实现示例。通过这些方法,你可以有效地管理和优化大量数据的展示,提高应用程序的性能和用户体验...

Global site tag (gtag.js) - Google Analytics