各位用户为了找寻关于sqlserver分页的两种写法分别介绍的资料费劲了很多周折。这里教程网为您整理了关于sqlserver分页的两种写法分别介绍的相关资料,仅供查阅,以下为您介绍关于sqlserver分页的两种写法分别介绍的详细内容

第一种是最传统的写法,用存储过程中的变量作为分页的乘数 

代码如下:

[c-sharp] view plaincopyprint?create proc p_paged1  @pageSize int,@currentPage int  as  select top (@pageSize) * from student  where id not in  (select top (@pageSize*(@currentPage-1)) id from student)  go  exec p_paged1 2,3  create proc p_paged1  @pageSize int,@currentPage int  as  select top (@pageSize) * from student  where id not in  (select top (@pageSize*(@currentPage-1)) id from student)  go  exec p_paged1 2,3 

--SQL Server2005以后的分页语句 

代码如下:

[c-sharp] view plaincopyprint?create proc p_paged2  @pageStart int, @pageEnd int  as  select * from  (select *,row_number() over(order by id desc) as rnum  from student) t  where t.rnum between @pageStart and @pageEnd  go  exec p_paged2 5,10