實現分頁的方式

2021-04-17 02:45:33 字數 1588 閱讀 6317

2000:

首先獲得所有的記錄集合的儲存過程:

create  procedure[dbo].[p_getordernumber]

asselectcount(orderid)fromorders;----orders為表

return

分頁的儲存過程

create procedure[dbo].[p_getpagedorders2000]

(@startindexint, ---開始頁數

@pagesizeint----每一頁顯示的數目)as

setnocounton

declare@indextabletable(idintidentity(1,1),nidint) ----定義乙個表變數

declare@pageupperboundint

set@pageupperbound=@startindex+@pagesize-1

setrowcount@pageupperbound

insertinto@indextable(nid)selectorderidfromordersorderbyorderiddesc

selecto.orderid,o.orderdate,o.customerid,c.companyname,e.firstname+''+e.lastnameasemployeename

fromorderso

leftouterjoincustomersc

ono.customerid=c.customerid

leftouterjoinemployeese

ono.employeeid=e.employeeid

innerjoin@indextableton

o.orderid=t.nid

wheret.idbetween@[email protected]   ----實現分頁的關鍵

setnocountoff

2005:

create [dbo].[p_getpagedorders2005]

(@startindexint,

@pagesizeint)as

begin

withorderlistas(

selectrow_number()over(orderbyo.orderiddesc)asrow,o.orderid,o.orderdate,o.customerid,c.companyname,e.firstname+''+e.lastnameasemployeename

fromorderso

leftouterjoincustomersc

ono.customerid=c.customerid

leftouterjoinemployeese

ono.employeeid=e.employeeid)

selectorderid,orderdate,customerid,companyname,employeename

fromorderlist

whererowbetween@startindexand@startindex+@pagesize-1

end

分頁實現方式

分頁實現方式 方法一 直接通過rownum分頁 select from select a.rownum rn from select from product a where company id order by status a where rownum 20 where rn 10 資料訪問開...

常見的分頁的實現方式 簡介

mysql select from tablename limit m,n m從 開始,n資料的條數 postgresql select from tablename limit n offset m oracle select from select s.rownum rn from select...

分頁實現的三種方式

分頁問題是乙個非常普遍的問題,開發者幾乎都會遇到,這裡不討論具體如何分頁,說明一下web方式下分頁的原理。首先是查詢獲得乙個結果集 表現為查詢資料庫獲得的結果 如果結果比較多我們一般都不會一下顯示所有的資料,那麼就會用分頁的方式來顯示某些資料 比如20條 因為http的無狀態性,每一次提交都是當作乙...