1 --分页 存储过程 案例
 2 
 3      -- 所执行的存储过程
 4     create proc pageForUsers
 5     @currPage int,        --当前页数
 6     @pageSize int,        --每页多少条记录
 7     @count int output    --总记录数    
 8     as
 9     declare @firstIndex  int
10     declare @lastIndex  int
11     declare @sqlText varchar(200)
12 
13     --统计总记录数
14     select @count=count(*) from users
15     --首先计算当前页第一条记录索引
16     set @firstIndex=(@currPage - 1) * @pageSize + 1
17     --当前页最后一条记录索引
18     set @lastIndex = @firstIndex + @pageSize - 1
19     --显示结果
20     set @sqlText='select top ' + convert(varchar(5),@pageSize) + ' * from users
21         where [id] not in (select top ' + convert(varchar(5),@firstIndex-1) + '[id] from users)'
22     exec (@sqlText)
23     

 

posted on 2017-03-14 22:10  互联网开发者  阅读(188)  评论(0编辑  收藏  举报