我想实现oracle的分页。在网上查了下,说可以用rownum实现。
假设有个表staff, 按name进行排序,并取出第11到20条纪录。
语法如下。select temptable2.* from
  (select temptable.* rownum as row_num from
    (select * from staff order by name)temptable
   where rownum<=20)temptable1)
where temptable2.row_num >=11现在的问题是如果表中记录很多,那么最内层的语句select * from staff order by name是不是会得到整个表的纪录?
如果是那样效率会很差。有没有其它更好的方法?