Wreszcie Microsoft SQL Server 2012 został wydany, bardzo podoba mi się jego prostota w paginacji, nie musisz używać skomplikowanych zapytań, takich jak odpowiedzi tutaj.
Aby uzyskać kolejne 10 wierszy, po prostu uruchom to zapytanie:
SELECT * FROM TableName ORDER BY id OFFSET 10 ROWS FETCH NEXT 10 ROWS ONLY;
https://docs.microsoft.com/en-us/sql/t-sql/queries/select-order-by-clause-transact-sql#using-offset-and-fetch-to-limit-the-rows- zwrócone
Kluczowe kwestie do rozważenia podczas korzystania z niego:
ORDER BY
jest obowiązkowe, aby użyćOFFSET ... FETCH
klauzula.OFFSET
klauzula jest obowiązkowa zFETCH
. Nie możesz użyćORDER BY ... FETCH
.TOP
nie można łączyć zOFFSET
iFETCH
w tym samym wyrażeniu zapytania.