ORACLE分頁SQL語句

2021-06-16 08:19:47 字數 657 閱讀 8806

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分頁sql語句

size medium oracle的分頁查詢語句基本上可以按照本文給出的格式來進行套用。分頁語句 select from select a.rownum rn from select from table name a where rownum 40 where rn 21 color 其中最內層...

ORACLE 分頁SQL語句

總結了一下幾種方法 具體在mssql sybase下面用top 來分頁 postgresql mysql就直接用limit更簡單了 在oracle 下面想了4總方法 minus差分頁 select from table where rownum 10 minus select from table ...

ORACLE分頁SQL語句

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 r...