2009-08-15 21 views
3

Wie kann ich die Ergebnisse von Query mit mehr als 1 Eigenschaft bestellen?Google AppEngine Abfrageauftrag

Zum Beispiel möchte ich meine Abfrageergebnisse nach 'lastname' ordnen und nach 'firstname' in jeder Gruppe von 'lastname' ordnen.

+0

+1. Es wird interessant. –

Antwort

1

Verwenden Sie einfach zwei durch Komma getrennt Aufträge, z.B .:

SELECT * FROM person ORDER BY lastname, firstname 

Siehe here für weitere Details.

+0

aber es ist GqlQuery nicht Abfrage –

+0

Ich kann stattdessen GqlQuery verwenden, aber ich frage mich, ob Query diese Art der Bestellung in irgendeiner Weise unterstützt. Ich konnte kein Beispiel für die API-Dokumentation finden. – Kei

+0

Oh, das habe ich von der Frage nicht verstanden ... Hast du '.order (" Nachname, Vorname ") versucht? –

2

Haben Sie versucht:..

Person.all(), um ("Nachname"), um ("Vorname")

+0

Ja, habe ich. Die Reihenfolge ("Vorname") unterbricht jedoch die Gruppierung auf "Nachname". – Kei

+0

Sicherlich ist das ein Fehler. http://code.google.com/appengine/docs/python/datastore/queryclass.html#Query_order sagt "Fügt eine Reihenfolge für die Ergebnisse hinzu. Die Ergebnisse werden beginnend mit der ersten hinzugefügten Reihenfolge sortiert". –

+0

Funktioniert für mich. Das ist ziemlich grundlegende Funktionalität - Sie können Auftragsklauseln definitiv wie diese verketten. –