Sqlserver
 sql >> Base de Dados >  >> RDS >> Sqlserver

Qual é a melhor maneira de buscar registros em lote do SQL Server


Se você não pode usar OFFSET-FETCH no SQL Server 2012 e supondo que a tabela tenha uma chave primária ou coluna(s) que permitem identificar exclusivamente uma linha, vamos chamá-la de UniqueKey , então a partir de 2005 você poderia usar ROW_NUMBER assim...
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