第一种是最传统的写法,用存储过程中的变量作为分页的乘数 复制代码 代码如下: [c-sharp] view plaincopyprint?create proc p_paged1 @pageSize int,@currentPage int as select top (@pageSize) * from student where id
第一种是最传统的写法,用存储过程中的变量作为分页的乘数 复制代码 代码如下: [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