Sqlserver
 sql >> Database >  >> RDS >> Sqlserver

Come posso ottenere una porzione specifica di risultati?

Praticamente tutte le implementazioni di SQL DB hanno un modo per specificare l'inizio riga da restituire, nonché il numero di righe.

Ad esempio, sia in MySQL che in Postgres è simile a:

SELECT ...
ORDER BY something -- not required, but highly recommended
LIMIT 100 -- only get 100 rows
OFFSET 500; -- start at row 500

Nota che normalmente dovresti includere un ORDER BY per assicurarti che i tuoi blocchi siano coerenti

MS SQL Server (essendo un DB "finto") non supporta OFFSET direttamente, ma può essere codificato utilizzando ROW_NUMBER() - vedere questo post SO per maggiori dettagli.