在mysql中,實現分頁查詢比較方便,只需要傳入查詢開始的條數start和要查詢多少條資料即每頁顯示多少條資料limit就可以
db2和oracle實現分頁的方式類似,所需要的引數為要查詢的資料開始的條數start,結尾的條數end,並且在sql語句中還需要設定row_number()(oracle中為rownum)作為查詢的輔助函式,此時要使用select語句的巢狀,巢狀在from子句中進行。
子句為:
select row_number() over ( order by date desc ) as r,e.* from emp e
其中 row_number() 作為人為的新增一列作為給每一條資料進行編號
over()中是實現排序的字段和方式,date是欄位名,desc是方式,都可以修改,但是over()為必須寫的,不寫會報錯
as r是為row_number()這個列取的乙個別名
真正要分頁查詢的資料在外面的父句中進行實現
完整的語句為
select * from (
select row_number() over(order by date desc) as r,e.*
from emp e
where e.name=』a』)
where r between 1 and 5
還有一種方式是用》=和<=直接實現的
語句為
select * from (
select row_number() over(order by date desc) as r,e.*
from emp e
where e.name=』a』 and r<=5)
where r>0
此時顯示的是1-5條資料,因為資料庫是從1開始的。
DB2分頁結果錯亂
以前用的很好的db2分頁程式,突然出現結果錯亂,第一頁中的內容,在第二頁中也出現,檢查原因,發現是因為order by 的字段有重複的值引起的 oracle下同樣會有這個問題 比如 order by sno 如果sno欄位的值有重複的,就會出現這個問題。以前的分頁語句 select from sel...
Oracle SQL和DB2分頁查詢寫法介紹
db2分頁查詢和oracle sql中的分頁查詢語句寫法都不太一樣,下面就為您介紹db2分頁查詢和其他資料庫中分頁查詢的區別,希望對您有所幫助。oracle分頁查詢寫法 一 oracle select from select rownum,name from table where rownum e...
Oracle SQL和DB2分頁查詢寫法介紹
db2分頁查詢和oracle sql中的分頁查詢語句寫法都不太一樣,下面就為您介紹db2分頁查詢和其他資料庫中分頁查詢的區別,希望對您有所幫助。oracle分頁查詢寫法 一 oracle select from select rownum,name from table where rownum e...