declare @pageSize int = 20
declare @page int = 5
;with data
as
(
select row_number() over (order by modifieddate) as rowNo, salesOrderId, UnitPrice, OrderQty from Sales.salesorderdetail
)
select * from data where rowNo >= ((@page - 1) * @pageSize) and rowNo < (@page * @pageSize);
From
this[
^] article, which I only published today.