如何使用存储过程来实现分页功能

create proc P_Test--创建存储过程P_Test

@pageSize int,--每页数据条数

@pageIndex int,--当前页数(页码)

@pageCount int output--总的页数,因为需要显示页数,因此是个输出参数

as

declare @datacount int--总数据条数

select @datacount=count(*) from test--获得总数据条数值并赋给参数

set @pageCount=ceiling(1.0*@datacount/@pageSize)--获得总页数,并赋给参数

--接下来是获得指定页数据

select * from

(select *,row_number() over(order by Test1) as num from test) as temp

where num between @pageSize*(@pageIndex-1)+1 and @pageSize*@pageIndex

原文地址:https://www.cnblogs.com/shenbing/p/5920001.html