<output id="qn6qe"></output>

    1. <output id="qn6qe"><tt id="qn6qe"></tt></output>
    2. <strike id="qn6qe"></strike>

      亚洲 日本 欧洲 欧美 视频,日韩中文字幕有码av,一本一道av中文字幕无码,国产线播放免费人成视频播放,人妻少妇偷人无码视频,日夜啪啪一区二区三区,国产尤物精品自在拍视频首页,久热这里只有精品12

      SQL 分頁支持查詢

      SQL 分頁支持查詢 ROW_NUMBER() OVER (ORDER BY ReportID) AS RowNo

       

      分頁支持查詢 SELECT * FROM (select *,ROW_NUMBER() Over(order by [id]) as row_index from [table] ) as [newtable] where row_index between [startindex] and [endindex]

           Sql Server 2000的自定義分頁,但是在sql server 2000中,要實現顯示某一頁,就返回那一頁數據的效果的方法實在不盡人意.網上很多通用的分頁存儲過程,但看著就頭大.如果使用我前面提到的使用in,not in,top來進行返回特定頁,特殊的限制又會比較多(比如ID要遞增).現在Sql Server 2005中提供了一個函數ROW_NUMBER(),可以使自定義分頁變得簡單許多.      我們先來看看ROW_NUMBER()是干什么的.執行下面這段SQL語句:      SELECT [ReportID],[UserName], [ReportID],      [TimeStart], [TimeEnd],ROW_NUMBER() OVER (ORDER BY ReportID) AS RowNo      FROM [ExecutionLog]      執行結果如下圖所示:            很簡單,ROW_NUMBER() 就是生成一個順序的行號,而他生成順序的標準,就是后面緊跟的OVER(ORDER BY ReportID).現在,你看到了自定義分頁的影子了嗎?:)下面,我們看看怎么具體應用這個RowNo進行分頁.

           現在,假設我每一頁的數據是10條,我們就可以使用如下所示的SQL語句返回指定頁的數據:      @"        SELECT TOP 10 *        FROM        (         SELECT top 10 [InstanceName], [UserName], [ReportID],         [TimeStart], [TimeEnd],ROW_NUMBER() OVER (ORDER BY ReportID) AS RowNo         FROM [ExecutionLog]        ) AS A        WHERE RowNo > " + pageIndex*10      pageIndex就是我們需要數據的頁數.很簡單,不是嗎?并且,這種方式幾乎沒有什么限制,因為他相當于對于任何檢索,都生成了一個新的排序列.我們就可以使用該列進行自定義分頁.

      ================

      下面舉個例子:

      ROW_NUMBER函數

        SQL Server2005為我們引入了一個ROW_NUMBER函數。你是否曾經需要為你的查詢結果集做行序號?你有時會發現能夠為行做序號是一件很有用的事情。從前,你不得不作棘手的事,像創建一個有序號列的臨時表,然后把你的SELECT結果插入到這個臨時表中。現在,用ROW_NUMBER函數,你就可以獲得添加在你的結果集的增加列中的行序號。為了獲得行序號,你只要簡單的將ROW_NUMBER函數作為一列添加進你的SELECT語句中。你還必須添加OVER語句以便告訴SQL Server你希望怎樣添加行序號。

        SELECT ROW_NUMBER() OVER(ORDER BY employee_id) AS 'Row Number', * from   dbo.employee


      結果

      Row Number employee_id Firstname Lastname soc_sec
      1 5623222 Tim Jones 123-65-8745
      2 5632111 Rob Kinkad 456-69-8754
      3 6365666 Jim Miller 236-56-8989
      4 7563333 Joe Roberts 564-89-5555


        這個查詢返回所有的雇員和一個顯示每條記錄在哪一行的一個序號。OVER語句使SQL Server基于employee_id列增加行序號。換句話說,產生了行序號,就好像數據按employee_id做了排序。這是很重要的一點,因為你仍然可以改變SELECT的排序順序。以下面的查詢為例:

        SELECT ROW_NUMBER() OVER(ORDER BY employee_id) AS 'Row Number', * from   dbo.employee   ORDER BY soc_sec


      結果

      Row Number employee_id Firstname Lastname soc_sec
      1 5623222 Tim Jones 123-65-8745
      3 6365666 Jim Miller 236-56-8989
      2 5632111 Rob Kinkad 456-69-8754
      4 7563333 Joe Roberts 564-89-5555


        注意第二個結果集數據是按社會安全編號來排序的,但是行號仍然創建得好像數據是按employee_id排序的。

      posted @ 2010-04-02 10:54  古文觀芷  閱讀(1108)  評論(0)    收藏  舉報
      主站蜘蛛池模板: 亚洲一区二区三成人精品| 99久久亚洲综合精品网| 女人被狂躁到高潮视频免费软件| 美国又粗又长久久性黄大片| 巴林右旗| 久久亚洲精品成人av无| 日韩精品成人一区二区三| 亚洲高潮喷水无码AV电影| 国产精品国产精品一区精品| 亚洲高清乱码午夜电影网| 国产老妇伦国产熟女老妇高清| 国产亚洲精品在av| AV免费播放一区二区三区| 国产福利深夜在线观看| a级亚洲片精品久久久久久久| 亚洲天堂av免费在线看| 好紧好滑好湿好爽免费视频| 又黄又刺激又黄又舒服| 久久www免费人成看片中文| 中文字幕亚洲精品人妻| av明星换脸无码精品区| 男人天堂亚洲天堂女人天堂 | 2020年最新国产精品正在播放 | 久久精品国产亚洲av麻豆长发| 99riav精品免费视频观看| 免费无码又爽又刺激网站| 97久久超碰精品视觉盛宴| 老司机精品成人无码AV| 国产精品一线二线三线区| 色爱综合另类图片av| 国产一区二区日韩经典| 色偷一区国产精品| 色老头亚洲成人免费影院| 欧美精欧美乱码一二三四区 | 亚洲精品有码在线观看| 亚洲香蕉av一区二区蜜桃| 衡山县| 久久精品视频一二三四区| 天堂亚洲免费视频| 欧美日本国产va高清cabal| 亚洲欧美日韩综合一区二区|