Google App-Modul und Paging

8

Wie würde man eine Abfrage schreiben, die die Elemente 2000-2010 aus einer Sammlung von 10000 Objekten im Datenspeicher auswählt?

Ich weiß, dass es so in GQL gemacht werden kann:

%Vor%

Laut der Dokumentation wird die Suchmaschine bei Verwendung von offset weiterhin ausgeführt hole alle Zeilen, gebe sie aber nicht zurück, so dass die Abfrage so abläuft, dass sie linear mit dem Wert von offset übereinstimmt.

Gibt es einen besseren Weg? So wie die Verwendung einer Pseudo ROWNUM -Spalte, wie sie in anderen Arten von Datenspeichern möglich ist.

    
Klaus Byskov Pedersen 16.04.2010, 07:34
quelle

2 Antworten

6

Es gibt keine Möglichkeit, effizient Offsets zu pagen, außer die Ergebnisse zwischenzuspeichern. Sie können jedoch Datenspeichercursor verwenden, um Paging mithilfe eines "Lesezeichens" zu implementieren. Typ Ansatz.

    
Nick Johnson 16.04.2010, 13:08
quelle
2

Neben der Verwendung von Cursorn können Sie auch eine Sortierreihenfolge verwenden. Zum Beispiel:

%Vor%

für die ersten 10 Objekte und dann für die nächsten 10 Objekte usw.

%Vor%

Feld könnte sogar ein Schlüssel sein, wenn Sie kein anderes passendes Feld haben. Hier ist ein vollständigeres Beispiel:

Ссылка

    
user27478 18.04.2010 12:17
quelle

Tags und Links