Oracle数据库分页总结

时间:2014-05-16 05:32:58   收藏:0   阅读:396

在Oracle数据库中,数据分页功能是必不可少的操作,

Oracle数据库分页查询语句有三种写法:

--1.根据ROWID 来分
select * from nmb where rowid in(
select rid from (
select rownum rn,rid from (
select rowid rid,userid from nmb order by userid desc )
where rownum <30)
where rn>20)
order by userid desc;--效率最高

--2.按分析函数来分页
select * from
(select t.*,row_number() over(order by userid desc)
rk from nmb t
)
where rk<30 and rk>20 --执行正确(但是效率最低)

--3.按rownum来分页
select * from (
select t.*,rownum rn from (
select * from nmb order by userid desc
)t where rownum<30
)where rn>20 --执行正确,效率比2高

 

Oracle数据库分页总结,布布扣,bubuko.com

评论(0
© 2014 mamicode.com 版权所有 京ICP备13008772号-2  联系我们:gaon5@hotmail.com
迷上了代码!