von Markus Winand.

Teilergebnisse


Manchmal ist es nicht notwendig, das vollständige Ergebnis einer SQL-Abfrage zu laden – die ersten paar Zeilen genügen. Wenn man zum Beispiel nur die aktuellsten Nachrichten anzeigen muss. Die meisten An­wen­dungen bieten dann die Möglichkeit, weitere Nachrichten durch eine Blätter-Funktion oder die modernere Variante des unendlichen Scrollens nachzuladen. Die entsprechenden SQL-Abfragen können aber Performanceprobleme verursachen, wenn alle Nachrichten immer wieder sortiert werden müssen, um die aktuellsten zu finden. Daher ist das pipelined order by in diesen Fällen besonders hilfreich.

Gratis Sticker

Nur für kurze Zeit: Use The Index, Luke! Sticker flattern gratis zu dir nach Hause. Einfach die Lieferadresse hier im Formular angeben. Kaffeetassen sind auch reduziert!

Dieses Kapitel zeigt, wie man das pipelined order by einsetzt, um Teil­ergebnisse effizient abzufragen. Obwohl die Syntax der verschiedenen Datenbanken dafür durchaus uneinheitlich ist, erfolgt die Ausführung der Abfragen immer gleich. Damit zeigt sich wieder einmal, dass die Hersteller alle nur mit Wasser kochen.

Inhalt

  1. Top-N Zeilen abfragen — wenn man nur die ersten paar Zeilen braucht

  2. Die nächste Seite laden — die Offset- und Seek-Methoden im Vergleich

  3. Window-Funktionen — mit analytischen Funktionen blättern

Vorherige SeiteNächste Seite

Über den Autor

Foto von Markus Winand

Markus Winand ist der SQL Renaissance Botschafter auf der Mission, Entwickler auf die Evolution von SQL im 21. Jahrhundert aufmerksam zu machen. Markus kann als Trainer, Sprecher und Berater auf winand.at engagiert werden.

Sein Buch bei Amazon kaufen

Titelbild von „SQL Performance Explained“: Eichhörnchen läuft durchs Grass

Die Essenz: SQL-Tuning auf 200 Seiten

Bei Amazon kaufen
(Taschenbuch)

Taschenbuch und PDF auch auf Markus' Webseite erhältlich.

Sein Training

Markus verwandelt veraltetes SQL-92-Wissen in solides und zeitgemäßes SQL-Know-how

Erfahren Sie mehr»

„Use The Index, Luke!“ von Markus Winand ist unter einer Creative Commons Attribution-Noncommercial-No Derivative Works 3.0 Unported License lizenziert.
Impressum | Kontakt | KEINE GEWÄHR | Handelsmarken | Datenschutz und DSGVO | CC-BY-NC-ND 3.0 Lizenz