SQL Server 2012使用Offset/Fetch Next實現(xiàn)分頁數(shù)據(jù)查詢
在Sql Server 2012之前,實現(xiàn)分頁主要是使用ROW_NUMBER(),在SQL Server2012,可以使用Offset ...Rows Fetch Next ... Rows only的方式去實現(xiàn)分頁數(shù)據(jù)查詢。
select [column1] ,[column2] ... ,[columnN] from [tableName] order by [columnM] offset (pageIndex-1)*pageSize rows fetch next pageSize rows only
上面代碼中,column1,column2 ... columnN表示實現(xiàn)需要查詢的列,tableName是表名,columnM是需要排序的列名,pageIndex是頁碼,pageSize是每頁數(shù)據(jù)的大小,實際中一般是先計算(pageIndex-1)*pageSize的結(jié)果,然后在sql里直接使用具體的結(jié)果(數(shù)字)
例如數(shù)據(jù)庫中有T_Student表,數(shù)據(jù)如下:
假如需要查詢第3頁的數(shù)據(jù)(由于數(shù)據(jù)少,這里假設(shè)每頁數(shù)據(jù)是2條,即pageSize=2),那么SQL語句如下:
select [Id] ,[Name] ,[StudentId] ,[MajorId] from T_Student order by [Id] offset 4 rows fetch next 2 rows only
結(jié)果如下:
注意:使用Offset /Fetch Next需要指定排序,即必須有order by ***
總結(jié)
以上所述是小編給大家介紹的SQL Server 2012使用Offset/Fetch Next實現(xiàn)分頁數(shù)據(jù)查詢,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復(fù)大家的。在此也非常感謝大家對腳本之家網(wǎng)站的支持!
相關(guān)文章
sql server2012附加數(shù)據(jù)庫問題解決方法
這篇文章主要介紹了sql server2012附加數(shù)據(jù)庫問題解決方法,需要的朋友可以參考下2014-05-05Sql學(xué)習(xí)第三天——SQL 關(guān)于CTE(公用表達式)的遞歸查詢使用
公用表表達式(CTE)具有一個重要的優(yōu)點,那就是能夠引用其自身,從而創(chuàng)建遞歸 CTE接下來詳細(xì)介紹下:CTE 的基本語法結(jié)構(gòu),在使用CTE時注意事項以及實例操作2013-03-03SQL Server簡單實現(xiàn)數(shù)據(jù)的日報和月報功能
這篇文章主要介紹了SQL Server簡單實現(xiàn)數(shù)據(jù)的日報和月報功能,結(jié)合實例形式對比分析了SQL Server實現(xiàn)當(dāng)日及當(dāng)月數(shù)據(jù)的查詢功能相關(guān)技巧,需要的朋友可以參考下2016-06-06SQL去除字符串空格的ltrim()和rtrim()函數(shù)的實現(xiàn)
SQL并不提供trim()函數(shù)去除字符串兩邊空格,只提供了去除字符串左邊空格ltrim()函數(shù)和去除右邊字符串空格rtrim()函數(shù),但是只要將這兩個函數(shù)配合使用,就能達到去除字符串兩端空格的效果,本文就來介紹一下這兩個函數(shù)的用法2023-11-11SQL Server跨服務(wù)器操作數(shù)據(jù)庫的圖文方法(LinkedServer)
這篇文章主要介紹了SQL Server跨服務(wù)器操作數(shù)據(jù)庫的方法,通過鏈接服務(wù)器(LinkedServer)實現(xiàn)SQL Server遠程鏈接MySql等數(shù)據(jù)庫,需要的朋友可以參考下2022-10-10sqlserver中去除字符串中連續(xù)的分隔符的sql語句
sqlserver中去除字符串中連續(xù)的分隔符的sql語句,需要的朋友可以參考下2012-05-05sql?server實現(xiàn)圖片的存入和讀取的流程詳解
這篇文章主要介紹了sql?server實現(xiàn)圖片的存入和讀取的詳細(xì)流程,文中通過代碼示例和圖文結(jié)合的方式給大家講解的非常詳細(xì),對大家的學(xué)習(xí)或工作有一定的幫助,需要的朋友可以參考下2024-05-05SQL Server誤區(qū)30日談 第21天 數(shù)據(jù)損壞可以通過重啟SQL Server來修復(fù)
SQL Server中沒有任何一項操作可以修復(fù)數(shù)據(jù)損壞。損壞的頁當(dāng)然需要通過某種機制進行修復(fù)或是恢復(fù)-但絕不是通過重啟動SQL Server,Windows亦或是分離附加數(shù)據(jù)庫2013-01-01