Бих избегнал използването на SELECT *
. Посочете колоните, които всъщност искате, въпреки че може да са всички.
SQL Server 2005+
SELECT col1, col2
FROM (
SELECT col1, col2, ROW_NUMBER() OVER (ORDER BY ID) AS RowNum
FROM MyTable
) AS MyDerivedTable
WHERE MyDerivedTable.RowNum BETWEEN @startRow AND @endRow
SQL Server 2000
Ефективно пейджинг чрез големи набори от резултати в SQL Server 2000
По-ефективен метод за пейджинг чрез големи набори от резултати