Orcle分页

Orcle分页

在了解orcle分页前让我们先了解一下,行号(rownum)与物理地址的概念

1.rownum行号

注意:select操作时就会执行

每出一行记录,该行就会加一个行号,行号不属于一张表.


  补充:
  行号必须是从1开始的,会依次递增,不会跳着做,eg:如1到5
  行号不属于任何一张表,不能用表名.rownum

 

2.rowid 行物理地址


行物理地址和表中的行固定绑定,永远不变


作用:rowid行物理地址,可以在plsql中对数据进行修改

 

Orcle分页语句

格式:

select * from
    (select rownum rn, tt.* from(
        --主查询
    ) tt where rownum<#{end})
where rn>#{begin};

 

步骤分析

 因rownum是在select时执行,如果sql后在进行分组过滤。那么行号顺序就不会显示正确的顺序
 因此我们可以在加一层查询,过滤条件放到外层查询中,这样就保证了查询出来的行号有序。
 增加起始页条件时,如果在过滤条件后继续增加条件如: and rn>5,这里要注意查询出第一条记录的时候,本来要   在该行上加上行号1可是我们要拿1去比对where后面的条件1不可能大于任何一个正数。where后面只要加了大于任何正数的条件就一定查不出任何数据。所以又对以上查询又加了一层查询,给里面的行号设置了别名。在外面添加起始页条件。

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值