各種數據庫(MYSQL、Oracle、DB2、SQL Server、PostgreSQL)的分頁查詢語句


  分頁查詢,就是將將過多的結果在有限的界面上分好多頁來顯示,這個是很多網站常用的功能,也是最基本的功能,今天簡單總結一下。

  分頁以前聽人們說都是一項技術,但是我覺的不盡然。我認為分頁是將數據庫的數據,利用一些特殊的sql語句來進行查詢,顯示理所應當顯示的內容,更恰當的說可以是對SQL語句的靈活運用,對邏輯思維的簡單使用。這里總結一些不同查詢數據庫的分頁查詢語句。

 

1.oracle數據庫分頁
select * from (select a.*,rownum rc from 表名 where rownum<=endrow) a where a.rc>=startrow

2.DB2數據庫分頁
Select * from (select rownumber() over() as rc,a.* from (select * from 表名 order by 列名) as a) where rc between startrow and endrow

3.SQL Server 2000數據庫分頁
Select top pagesize * from 表名 where 列名 not in(select top pagesize*page 列名 from 表名 order by 列名) order by 列名

4.SQL Server 2005數據庫分頁
Select * from (select 列名,row_搜索number() over(order by 列名1) as 別名from 表名) as t where t.列名1>=startrow and t.列名1<=endrow

5.MySQL數據庫分頁
Select * from 表名 limit startrow,pagesize
(Pagesize為每頁顯示的記錄條數)

6.PostgreSQL數據庫分頁
Select * from 表名 limit pagesize,offset startrow
(Pagesize為每頁顯示的記錄條數.)

7.通用模式select * from (
select * from tb_student where sid not in(
select sid from tb_student where rownum<=(currentPage-1)*pageSize)
) where rownum <=pageSize;


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM