Oracle高性能分页
Oracle没有Mssql里的Top的用法,分页一般使用rownum。
目前主流的两种分页方法一般有两种:
1、使用rownum三层嵌套分页。
这种方法sql语句比较臃肿,例如:
select * from (select t2.*,rownum rn from (select * from t1 order by lastmodifiedtime desc) t2 where rownum<40) t3 where t3.rn>10
2、使用row_number()函数进行分页,这种方法效率较高
select t2.* from (select t1.*,row_number() over(order by lastmodifiedat desc) rn from t1) t2 where rn <=4 and rn>2