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分页的方法:

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

以上存储过程对页数进行判断,如果是第一页或最后一页,进行特殊处理。其他情况使用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-30 14:36:49

SQL Server

2010-06-18 10:34:38

SQL Server

2010-11-10 15:29:40

SQL SERVER

2009-08-05 15:17:02

NTILE函数

2009-05-26 10:21:07

2011-04-18 13:02:08

SQL Server SQL Server

2015-07-22 17:27:41

SQL SERVER 链接

2011-08-19 10:24:46

SQL Server Top新用途

2010-06-18 13:18:29

SQL Server

2011-03-24 13:38:47

SQL Server 存储分页

2010-07-08 15:55:25

SQL Server

2011-03-21 13:44:38

SQL ServerSQL Server2分页

2010-09-13 13:05:03

sql server分

2010-11-09 13:09:58

SQL Server分

2010-06-18 13:14:26

SQL Server

2009-07-15 17:00:49

JDBC查询

2011-08-23 16:23:13

OracleMySQLSQL Server

2011-07-22 13:46:41

SQL Server MDAC

2011-08-02 15:39:30

SQL Server iSql
点赞
收藏

51CTO技术栈公众号