簡單實例解釋Oracle分頁查詢
什么是分頁查詢
分頁查詢就是把query到的結果集按頁顯示。比如一個結果集有1W行,每頁按100條數(shù)據庫。而你獲取了第2頁的結果集。
為什么要分頁查詢
如果一個結果集有幾十W行,那么在一個頁面上顯示肯定顯示不完。同時,顯示數(shù)據庫記錄是需要加載到內存的,而顯示大量數(shù)據是消耗內存更多。
我們可以為了以下目的使用分頁查詢:
- 為了精確定位結果集的內容
- 為了節(jié)約內存
- 為了在有限的頁面空間顯示適度的數(shù)據。
如何實現(xiàn)分頁查詢
使用Oracle的EMP表
select * from
( select rownum rn, e.* from
( select * from EMP) e
);
結果如下:

分頁查詢源碼如下:
select * from
( select rownum rn, e.* from
( select * from EMP) e
)
where rn > pageSize * (page - 1) and rn <= pageSize * page
分析源碼:
我們選定每頁(pageSize)為5。那么EMP表目前共有三頁,1~5行為1頁;6~10行為1頁;1~15行為1頁(缺第15行,那么第3頁就顯示4行記錄)
頁面從第1頁開始。
我們要查詢第2頁的記錄,那么page = 2。
where rn > 5 and rn <= 10
那么第2頁是由第6,7,8,9,10行記錄形成的。
select * from
( select rownum rn, e.* from
( select * from EMP) e
)
where rn > 5 and rn <= 10
結果如下:

分頁查詢也可以使用betwenn ... and ...
where rn = between (pageSize * (page - 1) + 1) and pageSize * page
可見分頁查詢是取某一范圍的結果集。
總結
以上就是這篇文章的全部內容了,希望本文的內容對大家的學習或者工作具有一定的參考學習價值,謝謝大家對腳本之家的支持。
相關文章
Oracle故障處理Rman-06207&Rman-06214的方法
新搭建的環(huán)境,還沒上線,今天在部署腳本,RMAN 備份中有一個警告,下面這篇文章主要給大家介紹了關于Oracle故障處理Rman-06207&Rman-06214的相關資料,需要的朋友可以參考下2022-11-11
Linux系統(tǒng)下Oracle數(shù)據庫監(jiān)聽啟動關閉命令詳解
現(xiàn)在很多朋友在學習linux下oracle 數(shù)據庫的時候可能都發(fā)現(xiàn)了一個問題,oracle數(shù)據庫的服務不能自動啟動,這篇文章主要給大家介紹了關于Linux系統(tǒng)下Oracle數(shù)據庫監(jiān)聽啟動關閉命令的相關資料,需要的朋友可以參考下2024-01-01
Oracle連續(xù)相同數(shù)據的統(tǒng)計
今天小編就為大家分享一篇關于Oracle連續(xù)相同數(shù)據的統(tǒng)計,小編覺得內容挺不錯的,現(xiàn)在分享給大家,具有很好的參考價值,需要的朋友一起跟隨小編來看看吧2019-01-01

