• 博客(0)
  • 资源 (1)

空空如也

分页存储过程

USE [news] GO /****** Object: StoredProcedure [dbo].[pro_GetPagedData] Script Date: 09/24/2014 17:49:22 ******/ SET ANSI_NULLS ON GO SET QUOTED_IDENTIFIER ON GO --创建分页存储过程 CREATE PROCEDURE [dbo].[pro_GetPagedData] @pageIndex INT,--输入参数,页号 @pageSize INT,--输入参数,每页容量 @rowCount INT OUTPUT,--输出参数,总行数 @pageCount INT OUTPUT--输出参数,总页数 AS BEGIN SELECT @rowCount = COUNT(ID) FROM News--查找表来设置总行数 IF((@rowCount)%(@pageSize) = 0)--如果总行数正好能整除每页容量,页数就是商 SET @pageCount = (@rowCount) / (@pageSize) ELSE--总行数不能整除每页容量,把最后几个不足一页的单独算一页,页数加1 SET @pageCount = (@rowCount) / (@pageSize) + 1 --用ROW_NUMBER新增加一列 SELECT TOP (@pageSize) * FROM (SELECT ROW_NUMBER() OVER(ORDER BY convert(int,ID) desc) AS num, * FROM News) AS tempTable --要使用临时表中字段,必须给临时表加别名 WHERE tempTable.num > ((@pageIndex-1)*@pageSize) AND tempTable.num <= (@pageSize * @pageIndex) END GO

2014-09-25

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除