SQL Server 2012使用Offset/Fetch Next實(shí)現(xiàn)分頁數(shù)據(jù)查詢
在Sql Server 2012之前,實(shí)現(xiàn)分頁主要是使用ROW_NUMBER(),在SQL Server2012,可以使用Offset ...Rows Fetch Next ... Rows only的方式去實(shí)現(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表示實(shí)現(xiàn)需要查詢的列,tableName是表名,columnM是需要排序的列名,pageIndex是頁碼,pageSize是每頁數(shù)據(jù)的大小,實(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實(shí)現(xiàn)分頁數(shù)據(jù)查詢,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時(shí)回復(fù)大家的。在此也非常感謝大家對腳本之家網(wǎng)站的支持!
相關(guān)文章
SqlServer備份數(shù)據(jù)庫的4種方式介紹
這篇文章主要介紹了SqlServer備份數(shù)據(jù)庫的4種方式介紹,本文講解了用sqlserver的維護(hù)計(jì)劃、通過腳本+作業(yè)的方式備份數(shù)據(jù)庫(非xp_cmdshell和xp_cmdshell)、用powershell調(diào)用sqlcmd來執(zhí)行備份命令幾種方式,需要的朋友可以參考下2015-02-02
sqlserver數(shù)據(jù)庫使用存儲過程和dbmail實(shí)現(xiàn)定時(shí)發(fā)送郵件
這篇文章主要介紹了sqlserver數(shù)據(jù)庫存儲過程和Job實(shí)現(xiàn)定時(shí)從數(shù)據(jù)庫發(fā)送郵件的功能,大家參考使用吧2014-01-01
用sql腳本創(chuàng)建sqlserver數(shù)據(jù)庫范例語句
創(chuàng)建sqlserver數(shù)據(jù)庫腳本 范例 ,主要是熟悉下用sql語句創(chuàng)建數(shù)據(jù)庫的代碼。2010-09-09
修復(fù)SQL Server數(shù)據(jù)庫中的恢復(fù)掛起狀態(tài)的方法總結(jié)
SQL 服務(wù)器恢復(fù)掛起可能是因?yàn)樵诮馕鰯?shù)據(jù)庫中的某些事務(wù)期間系統(tǒng)關(guān)閉不當(dāng),在本文中,將向你提供各種方法來修復(fù) SQL Server 數(shù)據(jù)庫中的恢復(fù)掛起狀態(tài),需要的朋友可以參考下2024-03-03
SQL Server并行操作優(yōu)化避免并行操作被抑制而影響SQL的執(zhí)行效率
這篇文章主要介紹了SQL Server并行操作優(yōu)化避免并行操作被抑制而影響SQL的執(zhí)行效率 的相關(guān)資料,需要的朋友可以參考下2016-07-07

