SQL实现分页存储过程
SQL分页存储过程的编写:
1 --获得分页的DATASET资源 2 ALTER PROC sp_GetSource( 3 @PageSize INT, --每页显示条数 4 @PageIndex INT, --页码(从1开始) 5 @RowCount INT OUTPUT, --数据总数 6 @PageCount INT OUTPUT--总页数 7 ) 8 AS 9 BEGIN 10 --获取数据总数 11 SELECT @RowCount = COUNT(*) 12 FROM [tblUser] 13 --计算总页数 14 SET @PageCount = @RowCount / @PageSize 15 IF @RowCount % @PageSize > 0 16 BEGIN 17 SET @PageCount = @PageCount + 1 18 END 19 --获取当前页的数据 20 SELECT [userID],[UserName],[UserLoginName],[RoleID] 21 FROM 22 ( 23 SELECT [userID],[UserName],[UserLoginName],[RoleID],ROW_NUMBER() OVER(ORDER BY [userID] ASC) AS RowNumber 24 FROM [tblUser] 25 ) T 26 WHERE RowNumber BETWEEN ((@PageIndex - 1)*@PageSize + 1) AND (@PageIndex * @PageSize) 27 28 END
转载请注明文章来自:程序猴(http://www.chengxuhou.com/)
posted on 2013-09-10 22:19 程序猴chengxuhou.com 阅读(207) 评论(0) 编辑 收藏 举报