儲存過程分頁

2021-05-22 16:18:53 字數 2057 閱讀 3853

create

database

test

onprimary

( name='

test_data.mdf',

filename='

d:/我的資料/sql/備份/test_data.mdf')

logon

(name='

test_data.ldf',

filename='

d:/我的資料/sql/備份/test_data.ldf')

ifobject_id('

tb') is

notnull

drop

table

tbcreate

tabletb(

col

int)

insert

into

tb select

top50

number

from

master..spt_values

where

type='

p'andnumber

>

0create

proc

splitpage

(@tablename

nvarchar(50

), @pagesize

int,

--每頁顯示的數量

@currentpage

int,

--當前第幾頁

@pagecol

nvarchar(50

),--

排序字段

@orderno

nvarchar(50

)--排序方式(desc,asc))as

/*測試用的

declare @pagecol nvarchar(50)

declare @tablename nvarchar(50)

declare @orderno nvarchar(50)

declare @pagesize int

declare @currentpage int

set @pagecol='col'

set @tablename='tb'

set @orderno='desc'

set @pagesize=10

set @currentpage=4

*/declare

@sql

nvarchar

(1000

)set

@sql=''

set@sql='

;with hgo as

(select *,row_number() over(

order by '+

@pagecol+'

'+@orderno+'

) rank

from '+

@tablename+'

)'set@sql

=@sql+'

select col from hgo where rank between '+

ltrim

((@currentpage-1

)*@pagesize+1

)+'and '+

ltrim

(@currentpage

*@pagesize)--

print @sql

exec

(@sql

)exec

splitpage 'tb

',10,

1,'col',

'desc

'col

-----------

5049

4847

4645

4443

4241(10

行受影響)

exec

splitpage 'tb

',10,

3,'col',

'desc

'col

-----------

3029

2827

2625

2423

2221(10

行受影響)

分頁儲存過程 分頁儲存過程

分頁儲存過程 alter proc dbo p pageshow pagesize int,每頁大小 currentpage int out,當前頁 housename nvarchar 50 房產名稱 totalcount int out,總記錄數 totalpage int out 總頁數 as...

分頁儲存過程

create proc p sobigo percentpage tblname varchar 255 t category 表名 strgetfields varchar 1000 需要返回的列 fldname varchar 255 排序的欄位名 pagesize int 10,頁尺寸 pag...

分頁儲存過程

create procedure pro select pageindex int,pagesize int as select student.sno,student.sname,student.s grade.math,grade.physics,grade.huaxue,grade.chine...