--oracle的两种常用分页方式
--a.利用伪列rownum分页获取第6-10条记录
select * from (select rownum rn,e.* from (select * from emp order by empno) e where rownum<11) where rn>5;
--思路:
1.select * from emp order by empno; --查询emp表并让结果按empno排序显示
2.select rownum rn,e.* from (select * from emp order by empno) e where rownum<11; --显示rownum ,将1中的查询结果作为表(内嵌视图)查询前10条记录
3.select * from (select rownum rn,e.* from (select * from emp order by empno) e where rownum<11) where rn>5; --查询2中的结果(1-10条记录)的6-10条记录
--b.rowid和rownum结合分页方式获取第6-10条记录(比上面的方法高效些,但是书写相对麻烦,较为复杂)
select * from emp where rowid in (select rid from (select rownum rn,rid from (select rowid rid from emp order by empno) where rownum<11) where rn>5) order by empno;
思路:
1.select rowid from emp order by empno;--显示rowid 并让结果按empno排序显示
2.select rownum rn,rid from (select rowid rid from emp order by empno) where rownum<11;--显示rownum ,将1中的查询结果作为表(内嵌视图)查询前10条记录
3.select rid from (select rownum rn,rid from (select rowid rid from emp order by empno) where rownum<11) where rn>5;--查询2中的结果(1-10条记录)的6-10条记录的rid
4.select * from emp where rowid in (select rid from (select rownum rn,rid from (select rowid rid from emp order by empno) where rownum<11) where rn>5) order by empno;
--查询emp中rid在第3步的查询结果范围的数据并且按empno排序显示[size=medium][/size]
分享到:
相关推荐
本文主要解决 Oracle 分页查询中排序与效率问题,通过实践和分析,提供了两种解决方案,并对比了两种方法的优缺点。 知识点 1: Oracle 分页查询的基本概念 Oracle 分页查询是指在查询结果中,通过限制行数来实现...
在Oracle中,常用的分页查询方法有两种:ROWNUM和ROW_NUMBER()函数。 1. ROWNUM方法: ROWNUM是Oracle特有的行号函数,它会为每一行返回一个唯一的行号,从1开始。但是,ROWNUM的限制在于它是在查询结果集生成之后...
本文将深入探讨MySQL与Oracle两种常用的数据库管理系统中的分页技术。 首先,我们来看MySQL的分页技术。MySQL提供了`LIMIT`子句来实现分页查询。`LIMIT m, n`语句用于限制查询结果的数量,其中`m`是起始索引,`n`是...
分页实现**:在SSH+Oracle的环境下,实现通用分页通常有以下几种方法: - 使用Hibernate的Criteria API配合 ScrollableResults 实现分页。 - 利用HQL(Hibernate Query Language)进行分页查询。 - 自定义SQL...
下面将介绍两种常用的Oracle分页查询方法: 1. **基础分页查询**: ```sql SELECT * FROM ( SELECT t.*, ROWNUM rn FROM table_name t WHERE ROWNUM ORDER BY attribute_id DESC ) WHERE rn >= 6 ORDER ...
在早期版本的Oracle中,最常用的分页方式是通过`ROWNUM`来实现: - **ROWNUM**:这是一个特殊的列,用于返回行的顺序号。默认情况下,当表中的每一行被检索时,其ROWNUM值递增。 - **实现步骤**: - 首先,使用`...
本文详细介绍了在 Oracle 数据库中如何实现分页查询,包括基本的 SQL 语句和存储过程两种方式,并给出了具体的 Java 实现示例。通过这些方法,你可以有效地管理和优化大量数据的展示,提高应用程序的性能和用户体验...
1. ROWNUM方法:这是Oracle早期版本中常用的分页方式。ROWNUM是在查询结果集返回之前生成的一个整数,表示行的顺序。例如,要获取第10到第20条记录,我们可以这样做: ```sql SELECT * FROM ( SELECT a.*, ROWNUM ...
本文将详细介绍两种常用的JavaWeb分页方法:基于数据库查询的分页和基于内存的分页。 一、基于数据库查询的分页 1. SQL查询分页: 这种方法直接在SQL查询语句中实现分页。大多数数据库系统如MySQL、Oracle、SQL ...
本文将围绕"Oracle常用代码技巧"这一主题,深入探讨Java如何调用Oracle的存储过程以及Oracle实现分页的方法。 首先,我们来看Java调用Oracle存储过程。在Java中,我们可以使用JDBC(Java Database Connectivity)...
- **doGet与doPost方法**:这两个方法是Servlet中最常用的方法,分别对应HTTP协议的GET和POST请求。在这个项目中,doGet可能用于获取留言列表,doPost可能用于提交新留言。 2. **Oracle数据库**: - **数据库...
#### 三、分页查询的两种常见写法及其性能比较 1. **第一种写法**(推荐): ```sql SELECT * FROM ( SELECT A.*, ROWNUM RN FROM (SELECT * FROM TABLE_NAME) A WHERE ROWNUM ) WHERE RN >= 21 ``` - **...
SSM框架是Java Web开发中常用的一种整合框架,由Spring、Spring MVC和MyBatis三个开源框架组成。这三个组件协同工作,为开发者提供了强大的服务,简化了开发流程,提高了开发效率。 1. **Spring框架**:Spring是...
在 MySQL 中实现分页查询通常有两种方法:`LIMIT` 和 `NOT IN` 方法。 1. **LIMIT 方法**: ```sql SELECT * FROM book LIMIT M, N; ``` - **解释**:此语句从第 M+1 行开始返回 N 条记录。 - **示例**:假设...
Java 分页技术是Java开发中常见的一种数据处理方式,尤其在大数据量的Web应用中,分页查询可以显著提高用户体验并降低服务器负载。本篇将详细介绍如何在SQL Server、MySQL和Oracle这三种主流数据库中实现Java分页。 ...
Oracle 与 DB2 是两种常用的关系数据库管理系统,尽管它们有着不同的架构和实现机制,但它们之间存在着一定的对应关系。本文将对 Oracle 与 DB2 的对应关系进行总结和分析,涵盖日期型数据转化、字符型转日期型、...
MyBatis 分页插件是数据库操作中常用的一个工具,它极大地简化了在MyBatis框架下实现分页查询的工作。这个源码分享主要针对MySQL和Oracle两大主流数据库,为开发者提供了高效且易于使用的分页解决方案。下面我们将...
### Oracle 常用查询举例详解 #### 一、设置查询环境 **1. 设置查询显示格式** 在进行Oracle查询时,我们常常需要调整查询结果的显示格式来满足不同的需求。例如,我们可以使用 `desc table` 命令来查看表的结构...