SQL2005数据库
SQL2005 数据库,才能使用: Row_Number() Over (Order By ...)
Create PROCEDURE DividePage_By_ROW_NUMBER
@iPageSize int --每页数
,@iIndexPage int --第几页
,@vOrderBy varchar(50) --排序字段
,@iRowCount int --总记录数
,@iIndexPage int --第几页
,@vOrderBy varchar(50) --排序字段
,@iRowCount int --总记录数
AS
BEGIN
SET NOCOUNT ON;
BEGIN
SET NOCOUNT ON;
with PageTable as
(
SELECT *, ROW_NUMBER() OVER (ORDER BY studentid DESC) AS num
FROM Student
)
(
SELECT *, ROW_NUMBER() OVER (ORDER BY studentid DESC) AS num
FROM Student
)
SELECT * FROM PageTable
WHERE num
WHERE num
BETWEEN ((@iIndexPage-1)*@iPageSize+1) AND @iPageSize*@iIndexPage
SET NOCOUNT OFF;
END
GO
END
GO
Oracle 数据库
SQL2000 数据库
转载于:https://blog.51cto.com/liweibird/242007