Sqlserver
 sql >> Datenbank >  >> RDS >> Sqlserver

Wie kann ich einen bestimmten Teil der Ergebnisse erhalten?

Praktisch alle SQL-DB-Implementierungen haben eine Möglichkeit, den Start anzugeben zurückzugebende Zeile sowie die Zahl Zeilen.

Zum Beispiel sieht es sowohl in mysql als auch in postgres so aus:

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

Beachten Sie, dass Sie normalerweise einen ORDER BY hinzufügen würden um sicherzustellen, dass Ihre Chunks konsistent sind

MS SQL Server (als "vorgetäuschte" DB) unterstützt OFFSET nicht direkt, aber es kann mit ROW_NUMBER() codiert werden - siehe diesen SO-Beitrag für mehr Details.