SQL SERVER 2000中SQL SERVER TOP分页的方法

数据库 SQL Server
SQL SERVER不同版本中的分页方法都不太一样,下文对SQL SERVER 2000中TOP分页的方法进行了详细的介绍,希望对您能有些许的帮助。

SQL SERVER TOP分页是我们经常会用到的,下面就对SQL SERVER 2000中SQL SERVER TOP分页的方法进行详尽的阐述,如果您感兴趣的话,不妨一看。

SQL SERVER 2000中SQL SERVER TOP分页的方法:

CREATE PROCEDURE [Zhzuo_GetItemsPage]  
@PageIndex INT, /@PageIndex从计数,0为第一页/  
@PageSize INT, /页面大小/  
@RecordCount INT OUT, /总记录数/  
@PageCount INT OUT /页数/AS/获取记录数/  
SELECT @RecordCount = COUNT() FROM Production.Product  
/计算页面数据/  
SET @PageCount = CEILING(@RecordCount 1.0 / @PageSize)  
/TOP记录数/  
DECLARE @TOPCOUNT INT  
SET @TOPCOUNT = @RecordCount - @PageSize @PageIndex   
DECLARE @SQLSTR NVARCHAR(1000)   
IF @PageIndex = 0 OR @PageCount <= 1  
BEGIN  
SET @SQLSTR =N‘SELECT TOP ‘+STR(@PageSize)+  
‘ProductID,Name FROM Production.Product ORDER BY ProductID DESC‘  
END  
ELSE  
BEGIN   
IF @PageIndex = @PageCount - 1  
BEGIN  
SET @SQLSTR =N‘SELECT FROM ( SELECT TOP ‘ + STR(@TOPCOUNT) +  
‘ProductID,Name FROM Production.Product ORDER BY ProductID ASC) T ORDER BY ProductID DESC‘  
END  
ELSE  
BEGIN  
SET @SQLSTR =N‘ SELECT TOP ‘+STR(@PageSize)+‘ FROM (SELECT TOP ‘ + STR(@TOPCOUNT) +  
‘ProductID,Name FROM Production.Product ORDER BY ProductID ASC) T ORDER BY ProductID DESC‘  
END  
END/执行/  
EXEC (@SQLSTR) 
  • 1.
  • 2.
  • 3.
  • 4.
  • 5.
  • 6.
  • 7.
  • 8.
  • 9.
  • 10.
  • 11.
  • 12.
  • 13.
  • 14.
  • 15.
  • 16.
  • 17.
  • 18.
  • 19.
  • 20.
  • 21.
  • 22.
  • 23.
  • 24.
  • 25.
  • 26.
  • 27.
  • 28.
  • 29.
  • 30.
  • 31.

以上存储过程对页数进行判断,如果是第一页或最后一页,进行特殊处理。其他情况使用2次TOP翻转。其中排序条件为ProductID倒序。最后通过EXECUTE执行SQL字符串拼串。

 

 

 

【编辑推荐】

SQL Server系统表的应用

Sql Server全文索引的迁移

SQL Server全文索引的用法

SQL Server备份恢复的两种方法

SQL SERVER删除日志的实现方法

责任编辑:段燃 来源: 互联网
相关推荐

2010-09-13 13:19:16

Sql Server分

2010-06-18 10:34:38

SQL Server

2010-06-30 14:36:49

SQL Server

2010-11-10 15:29:40

SQL SERVER

2009-08-05 15:17:02

NTILE函数

2009-05-26 10:21:07

2015-07-22 17:27:41

SQL SERVER 链接

2010-06-18 13:18:29

SQL Server

2011-03-24 13:38:47

SQL Server 存储分页

2011-04-18 13:02:08

SQL Server SQL Server

2010-09-13 13:05:03

sql server分

2010-11-09 13:09:58

SQL Server分

2011-03-21 13:44:38

SQL ServerSQL Server2分页

2011-07-22 13:46:41

SQL Server MDAC

2011-08-19 10:24:46

SQL Server Top新用途

2010-07-08 15:55:25

SQL Server

2011-08-02 15:39:30

SQL Server iSql

2010-06-18 13:14:26

SQL Server

2009-07-15 17:00:49

JDBC查询

2011-08-23 16:23:13

OracleMySQLSQL Server
点赞
收藏

51CTO技术栈公众号