oracle分页查第5页数据,Oracle 数据库分页查询的三种方法

一、Oracle 数据库分页查询的三种方法

1.简介

不能对 rownum 使用 >(大于或等于 1 的数值)、>=(大于 1 的数值)、=(不等于 1 的数值),否则无结果。所以直接用 rownum 的时候只能从 1 开始, 比如 rownum >1 没有记录,因为第一条不满足去掉的话,第二条的 rownum 又成了 1,所以永远没有满足条件的记录。

SELECT *

FROM emp

WHERE rownum >= 1;

b071951a5e30f8dbb3aa42a610cd795b.png

以下 sql 均无结果

SELECT *

FROM emp

WHERE rownum > 1;

SELECT *

FROM emp

WHERE rownum >= 2;

SELECT *

FROM emp

WHERE rownum = 0;

SELECT *

FROM emp

WHERE rownum < 1;

二、rownum 不从 1 开始分页查询的三种方法

SELECT *

FROM (

SELECT rownum AS rnum, e.*

FROM emp e

)

WHERE rnum >= 10;

e2ef2f2fdd717d83c78657e737bd6727.png

1.分页查询方法一

SELECT *

FROM (

SELECT rownum AS rnum, e.*

FROM emp e

WHERE rownum <= 10

)

WHERE rnum >= 5;

2ec119242bfff850e136732e39518777.png

2.分页查询方法二

SELECT *

FROM (

SELECT rownum AS rnum, e.*

FROM emp e

)

WHERE rnum BETWEEN 3 AND 6;

38939894db90ab3ac31fd97394fabb56.png

3.分页查询方法三

SELECT *

FROM (

SELECT rownum AS rnum, e.*

FROM (

SELECT *

FROM emp

) e

WHERE rownum <= 10

)

WHERE rnum >= 8;

ddaab0520fc6c50cd3f87423f5f9634e.png

参考资料

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值