Вы можете использовать функцию row_number () от Microsoft, чтобы решить, какие строки возвращать. Это означает, что вы не ограничены только лучшими результатами X, вы можете брать страницы.
SELECT *
FROM (SELECT row_number() over (order by UserID) AS line_no, *
FROM dbo.User) as users
WHERE users.line_no < 10
OR users.line_no BETWEEN 34 and 67
Вы должны вложить исходный запрос, потому что в противном случае вы получите сообщение об ошибке, сообщающее, что вы не можете делать то, что хотите, так, как вы, вероятно, должны быть в идеальном мире.
Msg 4108, Level 15, State 1, Line 3
Windowed functions can only appear in the SELECT or ORDER BY clauses.