乙個通用的資料分頁的儲存過程

2021-04-07 00:41:47 字數 1603 閱讀 9858

乙個通用的資料分頁的儲存過程

create procedure sp_page

@tb varchar(20), --表名

@col varchar(20), --按該列來進行分頁

@coltype bit, --@col列的型別,0-數字型別,1-字元型別

@collist varchar(800),--要查詢出的字段列表

@selecttype int, --查詢型別,1-前頁,2-後頁,3-首頁,4-末頁,5-指定頁

@pagesize int, --每頁記錄數

@page int, --指定頁

@minid varchar(50), --當前最小號

@maxid varchar(50) --當前最大號

as declare @sql varchar(8000)

if @coltype=1

begin

set @minid=''''+@minid+''''

set @maxid=''''+@maxid+''''

end

set @sql=

case @selecttype

when 1--前頁

then 'select '+@collist+' from (select top '+cast(@pagesize as varchar)+

' '+@collist+' from '+@tb+' where '+@col+'<'+@minid+

' order by '+@col+' desc) t order by '+@col

when 2--後頁

then 'select top '+cast(@pagesize as varchar)+' '+@collist+

' from '+@tb+' where '+@col+'>'+@maxid+' order by '+@col

when 3--首頁

then 'select top '+cast(@pagesize as varchar)+

' '+@collist+' from '+@tb+' order by '+@col

when 4--末頁

then 'select '+@collist+' from (select top '+cast(@pagesize as varchar)+

' '+@collist+' from '+@tb+' order by '+@col+' desc) t order by '+@col

when 5--指定頁

乙個通用的資料分頁的儲存過程

乙個通用的資料分頁的儲存過程 create procedure sp page tb varchar 20 表名 col varchar 20 按該列來進行分頁 coltype bit,col列的型別,0 數字型別,1 字元型別 collist varchar 800 要查詢出的字段列表 selec...

乙個通用的分頁儲存過程

這是我專案中使用的乙個分頁儲存過程,具有很強的通用性。配合前台asp.net使用50萬條資料基本感不到延遲。資料庫為sqlserver2000。1.分頁儲存過程 create procedure pagination str sql varchar 1000 執行的sql 不含order by 內容...

發布乙個通用的資料分頁的儲存過程

create procedure sp page tb varchar 50 表名 col varchar 50 按該列來進行分頁 coltype int,col列的型別,0 數字型別,1 字元型別,2 日期時間型別 orderby bit,排序,0 順序,1 倒序 collist varchar ...