for tables with > 1,000,000 rows and possibly many many more !
haven\'t done any benchmarking myself so wanted to get the experts opinion.
Looked at some articl
We use row_number()
to great effect and there hasn't really been any performance issues with it. The basic structure of our paginated queries looks like this:
WITH result_set AS (
SELECT
ROW_NUMBER() OVER (ORDER BY ) AS [row_number],
x, y, z
FROM
table
WHERE
) SELECT
*
FROM
result_set
WHERE
[row_number] BETWEEN a AND b
It works fine for us on tables with > 1,000,000 rows.