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

Como posso obter um pedaço específico de resultados?


Praticamente todas as implementações de banco de dados SQL têm uma maneira de especificar o início linha a ser retornada, bem como o número de filas.

Por exemplo, tanto no mysql quanto no postgres, parece:
SELECT ...
ORDER BY something -- not required, but highly recommended
LIMIT 100 -- only get 100 rows
OFFSET 500; -- start at row 500

Observe que normalmente você incluiria um ORDER BY para garantir que seus pedaços sejam consistentes

MS SQL Server (sendo um banco de dados "fingente") não suporta OFFSET diretamente, mas pode ser codificado usando ROW_NUMBER() - veja esta postagem SO para mais detalhes.