Oracle分页讨论

oracle分页???
在mysql中只要limit x,y就可以分页成功,那oracle 中是怎么做的呢?

=================================================

方法一:

SELECT   id,rown  
      FROM   (SELECT   id,   ROWNUM   rown  
                      FROM   (SELECT   id  
                                          FROM   table  
                                        WHERE   (************)  
                                  ORDER   BY   ********)  
                    WHERE   ROWNUM   <=   每页条数*页号)  
    WHERE   (rown   BETWEEN   每页条数*页号-(每页条数-1)   AND   每页条数*页号)  
   
  搞不定和我联系   lhw@263.net

 

 这样取出第11-20条记录!

select * from (
select rownum r,a from yourtable
where rownum <= 20
order by name )
where r > 10

 

=========================================================

 

[code=SQL]
select * from
     (select rownum r , e.*
     --
根据条件查找出所要的记录      
       from
           (select * from emp  where
条件 order by 字段 ) e
     )
where r between
起始行  and   结束行
[/code]

======================================================

方法三:

a_ja(青藏牦牛)回复于 2003-06-14 12:16:29 得分 0

select   *   from   you_db_table   where   rownum   <   20  
  minus  
  select   *   from   you_db_table   where   rownum   <   10  
   
  这样取出的是10~20之间的记录

======================================================

方法四:

有分页相对应的函数,如果从oracle中第100条开始,取10条数据,可以这样写:

Query q=session.creatQuery(" from  Person as p");
q.setFirstResult(100);
q.setMaxResult(10);
List l=q.list();

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值