久久国产成人av_抖音国产毛片_a片网站免费观看_A片无码播放手机在线观看,色五月在线观看,亚洲精品m在线观看,女人自慰的免费网址,悠悠在线观看精品视频,一级日本片免费的,亚洲精品久,国产精品成人久久久久久久

分享

SQL分頁語句 ( 轉(zhuǎn)自牛腩老師的博客 )

 昵稱10504424 2013-02-19
sql server2000方法:

 

 

Sql代碼 復(fù)制代碼 收藏代碼
  1. select top 每頁顯示的記錄數(shù) * from topic where id not in  
  2.  (select top (當(dāng)前的頁數(shù)-1)×每頁顯示的記錄數(shù) id from topic order by id desc)   
  3.  order by id desc  

    需要注意的是在access中不能是top 0,所以如果數(shù)據(jù)只有一頁的話就得做判斷了,。,。

 

②sql server2005中的分頁代碼:

 

 

Sql代碼 復(fù)制代碼 收藏代碼
  1. with temptbl as (   
  2.   SELECT ROW_NUMBER() OVER (ORDER BY id desc)AS Row,    
  3.   ...   
  4. )   
  5. SELECT * FROM temptbl where Row between @startIndex and @endIndex  

 該方法說明:創(chuàng)建一個臨時表,表中加一列元素ROW,,然后按照ROW的大小取出相應(yīng)的頁的數(shù)據(jù)(主要用于web開發(fā)分頁管理)

   實(shí)例:

 

Sql代碼 復(fù)制代碼 收藏代碼
  1. with temptbl as (   
  2.   SELECT ROW_NUMBER() OVER (ORDER BY id desc)AS 行號,* from news   
  3. )   
  4. SELECT * FROM temptbl where 行號 between 9 and 16  

 

 

 

 

 

補(bǔ)充:

 

11 樓 niunan 2009-07-22   引用

自己在網(wǎng)上找了一下,。。發(fā)現(xiàn)http://hi.baidu.com/fuhengyu/blog/item/adb30aafe4df88c87cd92ae9.html
有個分頁存儲過程,,覺得蠻簡單的,,弄下來在自己的機(jī)子上測試了一下,發(fā)現(xiàn)出錯,,自己更改了一下錯誤,,改后的分頁存儲過程如下:

Sql代碼 復(fù)制代碼 收藏代碼
  1. SET ANSI_NULLS ON  
  2. GO   
  3. SET QUOTED_IDENTIFIER ON  
  4. GO   
  5. -- =============================================   
  6. -- Author:      牛腩   
  7. -- Create date: 2009-07-22 12:41   
  8. -- Description: 分頁,,用到了ROW_NUMBER()   
  9. -- =============================================   
  10. ALTER PROCEDURE [dbo].[proc_ShowPage]   
  11. @tblName   varchar(255),       -- 表名   
  12. @strGetFields varchar(1000) = '*'-- 需要返回的列,默認(rèn)*   
  13. @strOrder varchar(255)='',      -- 排序的字段名,,必填   
  14. @strOrderType varchar(10)='ASC'-- 排序的方式,默認(rèn)ASC   
  15. @PageSize   int = 10,          -- 頁尺寸,默認(rèn)10   
  16. @PageIndex int = 1,           -- 頁碼,默認(rèn)1   
  17. @strWhere varchar(1500) = '' -- 查詢條件 (注意: 不要加 where)   
  18. AS  
  19.   
  20. declare @strSQL   varchar(5000)   
  21.   
  22. if @strWhere !=''  
  23. set @strWhere=' where '+@strWhere   
  24.   
  25. set @strSQL=   
  26. 'SELECT * FROM ('+   
  27.     'SELECT ROW_NUMBER() OVER (ORDER BY '+@strOrder+' '+@strOrderType+') AS pos,'+@strGetFields+' '+   
  28.     'FROM ['+@tblName+'] '+@strWhere+   
  29. ') AS sp WHERE pos BETWEEN '+str((@PageIndex-1)*@PageSize+1)+' AND '+str(@PageIndex*@PageSize)   
  30.   
  31. exec (@strSQL)   
  32. print @strSQL  -- 測試用,可在查詢的時候看到生成的SQL語句  
 

 

 

 

 

    本站是提供個人知識管理的網(wǎng)絡(luò)存儲空間,,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點(diǎn),。請注意甄別內(nèi)容中的聯(lián)系方式,、誘導(dǎo)購買等信息,謹(jǐn)防詐騙,。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,,請點(diǎn)擊一鍵舉報。
    轉(zhuǎn)藏 分享 獻(xiàn)花(0

    0條評論

    發(fā)表

    請遵守用戶 評論公約

    類似文章 更多