Stellen Sie sich vor, Sie haben eine Entität im Google App Engine-Datenspeicher, in der Links für anonyme Benutzer gespeichert sind. Sie mögen die folgende SQL-Abfrage ausführen, die nicht unterstützt wird:Python: DISTINCT auf GQuery-Ergebnismenge (GQL, GAE)
SELECT DISTINCT user_hash FROM links
Stattdessen könnten Sie:
user = db.GqlQuery("SELECT user_hash FROM links")
Wie Python verwenden, am effizientesten das Ergebnis zu filtern, so dass es Gibt eine DISTINCT-Ergebnismenge zurück? Wie wird die DISTINCT-Ergebnismenge gezählt?
Ein Set-Objekt ist eine ungeordnete Sammlung von verschiedenen hashbaren Objekten. (...) Neu in Version 2.4. http://www.python.org/doc/2.5.2/lib/types-set.html –
Set ist in Ordnung, wenn die Anzahl der Datensätze relativ klein ist. Aber wenn Sie Milliarden von Datensätzen im Datenspeicher haben, wäre das ziemlich ineffizient! Eine viel bessere Strategie wäre es, das Ergebnis vor der Einfüge-/Aktualisierungszeit vorzuberechnen und zu speichern. – sudarkoff