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.

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.

Wenn dir gefällt, wie ich die Dinge erkläre, wirst du meine Kurse lieben.

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 lehrt effizientes SQL – inhouse und online. Er minimiert die Entwicklungszeit durch modernes SQL und optimiert die Laufzeit durch schlaue Indizierung – dazu hat er auch das Buch SQL Performance Explained veröffentlicht.

Sein Buch

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

Die Essenz: SQL-Tuning auf 200 Seiten.

Von Markus kaufen
(Taschenbuch und PDF)

Bei Amazon kaufen
(nur Taschenbuch)

Hol dir Markus

…für ein Training in dein Büro.

Das beliebte SQL-Performance Training für Entwickler lässt dich die Datenbank besser verstehen. Erfahre 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 | CC-BY-NC-ND 3.0 Lizenz