Haben Sie die Überschrift dieses Artikels gelesen?
Beachten Sie, dass der folgende Artikel nur für Versionen von PostgreSQL vor 9.2 gilt. Nur-Index-Scans sind jetzt implementiert.
Verwenden Sie 9.2 und Sie werden im Allgemeinen feststellen, dass Sie viel bessere Ergebnisse erzielen. Weitere Informationen finden Sie auf der Wiki-Seite zu Nur-Index-Scans.
Das heißt, auf älteren Versionen mit LIMIT
und OFFSET
funktioniert im Allgemeinen gut. Sie können die Anzahl der Zeilen (und damit der Seiten) mithilfe der Tabellenstatistiken schätzen, wenn Ihnen ein wenig Variation nichts ausmacht. Siehe "Zeilenanzahl schätzen" in dem Artikel, den Sie bereits verlinkt haben.
Seitenumbruch mit LIMIT
und OFFSET
ist meiner Meinung nach sowieso ein Anti-Pattern. Häufig können Sie Ihren Paginierungscode so umformulieren, dass er sort_column > 'last_seen_value' LIMIT 100
verwendet , d.h. es vermeidet den Versatz. Dies kann manchmal zu sehr großen Leistungssteigerungen führen.