Oracle分頁查詢

2021-10-02 04:27:41 字數 540 閱讀 9700

分頁查詢sql語法每個資料庫都不太一樣。mysql分頁實現比較簡單,最近接觸到oracle,整理一下分頁的實現。

oracle的表中除了我們建立表是定義的字段,資料庫還有rownum這個字段,其實每張表都有,而分頁就要用到這個字段,一般稱之為偽列。

偽列的值就是當前資料記錄在表中的行號。但是如果直接使用這個欄位做條件過濾資料會發現其實是查不到資料的,因為這個行號是動態的不是固定的所以oracle中要對某張表的資料或者過濾後的資料進行分頁,首先就要把這些資料查出來作為乙個結果集,然後在這個結果集的基礎上再做進一步處理。

例如要實現user表中age大於10的記錄進行分頁,單頁為10條,本次查詢第2頁

分析一下邏輯:查詢條件和分頁限制條件都是where條件,查詢第二頁也就是說要查詢的就是第11到底20條記錄

先查詢乙個排序的結果集,然後在這個結果集基礎上加rownum查詢得到最終的結果集,最後在最終結結果集上做處理。

ORACLE分頁查詢

單錶分頁 start num 起始行號 end num 截止行號 select t.from select s.rownum rn from table s where rownum end num t where rn start num 多表分頁 select from select temp....

Oracle分頁查詢

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

oracle 分頁查詢

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