關鍵字:ROWNUM
分頁參數:curPage(目前頁數),pageSize(每頁大小)
用法:
select * from (
select t.*,ROWNUM RN from table t where ROWNUM<=curPage*pageSize)tmp
where tmp.RN >=(curPage-1)*pageSize
注意:上限條件必須放在子查詢,下限條件必須放在外層查詢,原因如下:
rownum總是從1開始,第一條不滿足去掉,第二條的rownum又變成了1,以此類推,永遠沒有滿足條件的記錄,是以當子查詢中使用“>,>=,=,between...and ”的時候,是查不到資料的!
對于檢索、排序、分組等SQL查詢出來的資料,分頁時候注意分頁資料的正确性!例如排序:排序SQL作為最内子查詢先對資料排好序,然後倒數第二層放分頁上限條件,最外層放下限條件。
總頁數:總數量/pageSize+1