1 SELECT * FROM TableName where expression order by id desc offset 0 rows fetch next 500 rows only 2 select * from (select *,ROW_NUMBER() over(order by id desc) ROW_ID from TableName where expression) t where t.ROW_ID between 0 and 500