SQLSERVER2000中SQLSERVERTOP分页的方法

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

创新互联公司是一家专注于成都网站设计、成都网站建设与策划设计,宣恩网站建设哪家好?创新互联公司做网站,专注于网站建设十多年,网设计领域的专业建站公司;建站业务涵盖:宣恩等地区。宣恩做网站价格咨询:18980820575

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删除日志的实现方法

文章标题:SQLSERVER2000中SQLSERVERTOP分页的方法
本文链接:http://www.csdahua.cn/qtweb/news6/514356.html

网站建设、网络推广公司-快上网,是专注品牌与效果的网站制作,网络营销seo公司;服务项目有等

广告

声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 快上网