Jeśli nie możesz użyć OFFSET-FETCH
w SQL Server 2012 i zakładając, że tabela ma klucz podstawowy lub kolumny, które pozwalają jednoznacznie zidentyfikować wiersz, nazwijmy go UniqueKey
, następnie od 2005 r. można było użyć ROW_NUMBER
w ten sposób...
SELECT UniqueKey, col2, col3
FROM
(
SELECT UniqueKey, col2, col3, ROW_NUMBER() OVER (ORDER BY UniqueKey) AS RowNum
FROM YourTable
) sub
WHERE sub.RowNum BETWEEN @startRow AND @endRow