Merhabalar,
MSSQL 2008 ve MSSQL 2012 de sayfalama işleri nasıl yapılır.
MSSQL 2008
Declare @pageNumber INT=2;
Declare @totalPage INT=3;
WITH PageList AS
(
SELECT ROW_NUMBER() OVER(ORDER BY ID) AS LineNo, m. * FROM Pages as m
)
SELECT *
FROM PageList
WHERE LineNo BETWEEN (@pageNo - 1) * @totalPage + 1
AND @pageNo * @totalPage
MSSQL 2012
Yukarıdaki ROW_NUMBER() performansımdan ve daha kolay kullanım sağlamak için yeni geliştirmeler bulunmaktadır.
SELECT * FROM Pages
ORDER BY ID ASC
OFFSET 200 ROWS
FETCH NEXT 220 ROWS ONLY
Osman KURT
Yazılım Uzmanı