Oracle 分页Sql

 1 -- 1.rownum是oracle预处理字段,默认标序是1,只有记录集已经满足条件后才会进行后续编号,否则将一直为1。
 2 -- 2.~
 3 
 4 select * from ( select e.*,rownum rn     -- 起个别名,主要是给外层用的
 5         from emp e 
 6         where rownum <=10)  -- 可使用 rn 或 rownum ,但 默认标序1 必须 在条件范围内,否则内层无数据,外层也无数据。
 7 where rn >=4        -- 必须使用rn,不能使用rownum。若使用rownum,则默认为外层的rownum发生情况1(无数据)。
 8 
 9 -------------------------------------------------------------------------------------
10 
11 select * from (
12        select e.*,
13     row_number() over(order by e.empno) rn 
14     from emp e
15  ) where rn between 4 and 10

 

posted @ 2014-02-27 19:52  聆听自由  阅读(149)  评论(0编辑  收藏  举报