Oracle:分页条件

SQL分页查询解析
本文详细介绍了使用SQL进行分页查询的方法,包括无条件及有条件情况下的分页查询实现步骤,并通过具体实例展示了如何实现员工信息的分页展示。

代码解析:

SELECT b表.*,ROWNUM  FROM 
       (SELECT a.*,ROWNUM rn FROM a表 (WHERE 条件...多个)) b 
               WHERE b.rn>起始索引 AND b.rn < 结束索引;

分页原理:(没有条件)
第一步:从什么开始取值。。。?
第二部:从哪里结束取值。。。?

分页原理:(有条件)
第一步:分析条件。。。(把有条件的数据查询出来作为新表来实现分页)
第二步:从什么开始取值。。。?第三部:从哪里结束取值。。。?

例子:
以员工表为列:(查询部门编号为10员工信息,展示前2条;
条件:(部门编号=30),每页2条数据)
 

第一步:查询部门编号为30的所有员工信息
SELECT a.*,ROWNUM rn FROM emp a WHERE deptno = 30;

第二步:在第一步的基础上加分页
第一页:
SELECT b.*,ROWNUM  FROM
       (SELECT a.*,ROWNUM rn FROM emp a WHERE deptno = 30) b
               WHERE b.rn>0 AND b.rn < 3;
第二页
  SELECT b.*,ROWNUM  FROM
       (SELECT a.*,ROWNUM rn FROM emp a WHERE deptno = 30) b
               WHERE b.rn>2 AND b.rn < 5;  

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值