天天看點

很強的分頁存儲過程,速度超快!

CREATE procedure  dbo.pager

(

--取得目前頁數

@pagenum int,

--取得每頁記錄數

@rowcount int,

--傳回記錄總數

@count int output

)

 AS

--定義起始記錄ID

declare @start int

--定義結束記錄ID

declare @end int

--設定起始記錄ID,與目前頁數和每頁記錄數相關。

set @[email protected]*@rowcount

--設定結束記錄ID,與目前頁數和每頁記錄數相關,起始記錄ID減去每頁記錄數即為目前頁的記錄數。

set @[email protected]@rowcount

--設定選取記錄數

set rowcount @start

--将選取的記錄插入臨時表

select *  into #t1  from  myTable

--設定删除的記錄數

set rowcount @end

--不是第一頁時删除表,第一頁時不删除表中資料。

if @end>0

--删除臨時表中不必要的資料

delete #t1

--不限制選取的記錄數

set rowcount 0

--顯示臨時表中的資料

select * from #t1

--declare @count int

select @count=count(*)  from  myTable

GO

繼續閱讀