不管在任何乙個開發中,分頁幾乎都是比不可少的。這裡我們就說說分頁的sql語句實現,在後面的幾篇部落格中在寫一些關於分頁外掛程式的建立和應用。
一般上線的系統資料量都不小,在分頁的時候對於大資料量的我們一般都會用多少資料從資料庫中取出多少資料。不會說一次性把所有的資料都取出來,那樣資源占用太大了效能也不行。
1.oracle的分頁語句
select * from
(select t.*, rownum r
from table t
where rownum < m order by t.*** desc) t2
where t2.r >= n;
rownum: 它是oracle給查詢出來的結果加的乙個偽列,該偽列是結果每返回一行給rownum賦個值,值為從1開始依次增加。取別名為r。
(具體詳解和取值)
order by:對查詢的結果進行排序。
m和n:n表示的是開始記錄數,m-n表示該頁的顯示記錄數
外查詢的where必須使用rownum的別名
order by: 必須放在子查詢裡面。
rownum: 不能有字首
2.mysql的分頁語句
select * from table limit m,n;
m和n:從m條記錄開始顯示n條記錄。
例:
(1)從記錄20開始檢索10條記錄。(20-30)
select * from dept limit 20,10;
select * from
(select t.*, rownum r
from dept t
where rownum < 30 order by deptid desc ) t2
where t2.r >= 20
(2)先按一欄位排序,然後去的20-30行 以外的資料
select * from
(select t.*, rownum r from
(select * from dept order by deptid) t
) where r >30 or r < 20;
sql語句實現分頁
sql語句實現分頁 sqlstr select top 10 from shebei where id not in select top cint pagenum 1 10 id from shebei order by id desc order by id desc 計算總頁數 dimstr ...
sql 語句實現分頁
select top 每頁顯示的資料量 from 表名 where 主鍵或者其他字段 select isnull max 主鍵或者其他字段 0 from select top 每頁顯示的數量量 第幾頁 主鍵或者其他字段 from 表名 order by 主鍵或者其他字段 a order by 主鍵或...
Sql 分頁語句
with temptb as select row number over order by id as rowid,from pagecut select from temptb where rowid between 2 50 and 2 50 50 這是乙個資料分頁方法,從sql2005起就支...