1.根據rowid來分
select * from t_xiaoxi where rowid in(select rid from (select rownum rn,rid from(select rowid rid,cid from
t_xiaoxi order by cid desc) where rownum<10000) where rn>9980) order by cid desc;
執行時間0.03秒
2.按分析函式來分
select * from (select t.*,row_number() over(order by cid desc) rk from t_xiaoxi t) where rk<10000 and rk>9980;
執行時間1.01秒
3.按rownum來分
select * from(select t.*,rownum rn from(select * from t_xiaoxi order by cid desc) t where rownum<10000) where
rn>9980;執行時間0.1秒
其中t_xiaoxi為表名稱,cid為表的關鍵字段,取按cid降序排序後的第9981-9999條記錄,t_xiaoxi表有70000多條記錄
個人感覺1的效率最好,3次之,2最差
詳解Oracle的幾種分頁查詢語句
分頁查詢格式 select from select a.rownum rn from select from table name a where rownum 40 where rn 21 其中最內層的查詢select from table name表示不進行翻頁的原始查詢語句。rownum 40...
詳解Oracle的幾種分頁查詢語句
2009 04 09 13 14 佚名 51cto 字型大小 t t 本文將介紹oracle的分頁查詢語句,看過本文後,大家基本上可以按照本文給出的格式來進行套用。不同的格式具備不同的執行效率。分頁查詢格式 select from select a.rownum rn from select fro...
詳解Oracle的幾種分頁查詢語句
分頁查詢格式 select from select a.rownum rn from select from table name a where rownum 40 where rn 21 其中最內層的查詢select from table name表示不進行翻頁的原始查詢語句。rownum 40...