Ich habe eine einfache Tabelle in Google App Engine mit einem Datumsfeld. Ich möchte alle Zeilen mit dem Datumsfeld zwischen jetzt und 6 Stunden abfragen. Wie formuliere ich diese Abfrage?Wie alle Einträge der letzten 6 Stunden (Datetime) in GQL abgefragt werden?
Antwort
SELECT * FROM simpletable
WHERE datefield < DATETIME(year, month, day, hour, minute, second)
Berechnung diejenigen Jahr, Monat, & c, im Anwendungscode.
wie Sie eine Zählung dieser Abfrage erhalten:
In Python wird die Abfrage dann wie folgt verwendet? – erotsppa
In der Python App Engine machst du eine GqlQuery daraus und rufst dort die .count() Methode auf; Es gibt keine Möglichkeit, den COUNT direkt in den Gql zu gleiten. –
Und beachten Sie, dass das Zählen ist ineffizient - es ist O (n) mit der Anzahl der gezählten Einheiten, und in App Engine kann nicht auf mehr als 1000. –
Ich weiß, Sie sagen GQL, aber hier ist eine Python-Hilfsfunktion verwende ich:
import datetime
def seconds_ago(time_s):
return datetime.datetime.now() - datetime.timedelta(seconds=time_s)
Es auch ein prägnanter Weise sein kann, es zu schreiben: Ich bin nicht ein Python-Experte und ging mit dem ersten was funktioniert hat. Sehen Sie sich die datetime docs an, wenn Sie interessiert sind. Es wird wie folgt verwendet:
my_query = MyTable.all().filter("date >", seconds_ago(6*60*60))
Ich bin sicher, dass übersetzt werden kann, um GQL ohne viel Mühe, aber ich ziehe die objektorientierte Schnittstelle, und ich weiß nicht, die notwendige DATETIME- Syntax.
# get a count
my_query.count()
# get up to 1000 records
my_query.fetch(1000)
# iterate over up to 1000 records
for result in my_query:
# do something with result
+1 für auf Abfrage basierende Lösung. –
Sie haben mir eine Menge Kopfschmerzen erspart, vielen Dank. –
- 1. DATETIME Zeilen aus den letzten 2 Stunden auswählen
- 2. Ermitteln der letzten Login-Zeit in Stunden
- 3. Alle ausgeführten gespeicherten Prozeduren in den letzten 24 Stunden abrufen
- 4. Sortiere alle FB Kommentar Anzahl für die letzten 24 Stunden
- 5. Ruby on Rails Abfrage von Datetime Bereich (letzten 24, 48, etc ... Stunden)
- 6. Verstecken der letzten 3 Einträge in einer Liste jQuery
- 7. PHP/MySQL Datetime-Feld: alle Einträge im angegebenen Monat
- 8. Verstecke die letzten Einträge in der Liste mit css
- 9. MySQL: Datensätze nach Stunden eingefügt, für die letzten 24 Stunden
- 10. Wie werden Tabellenkalkulationsdaten abgefragt, Werte abgeglichen und zusammengefasst?
- 11. Format Exception- DateTime und Stunden
- 12. Nodejs + mongodb: Wie $ ref Felder abgefragt werden?
- 13. Eintrag Besuche in den letzten 24 Stunden
- 14. Drop Stunden und Minuten in Datetime Python
- 15. Stunde von DateTime? in 24 Stunden Format
- 16. SQL konvertieren Datetime und subtrahieren Stunden
- 17. Wie kann ich 6 Stunden von der aktuellen Zeit subtrahieren?
- 18. Stunden entfernen: Sekunden: Millisekunden in DateTime-Objekt
- 19. Daten aus den letzten 8 Stunden in einer Datetime-Spalte abrufen Eloquent
- 20. Wie kann man Beiträge, die in den letzten 24 Stunden kommentiert wurden, nur in WordPress abrufen?
- 21. Wie können Bereichsdaten in HBase gespeichert und abgefragt werden? Derzeit
- 22. 6 Bytes Zeitstempel zu DateTime
- 23. MongoDB Aggregat alle 2 Stunden
- 24. Alle Einträge vom heutigen Tag bis zum nächsten oder letzten 30 Tage finden
- 25. Wie analysiert man alle doppelten Einträge in diesem Pandas DataFrame?
- 26. Aufzeichnungen finden in einem Zeitraum von 24 Stunden (nicht vor allem die letzten 24 Stunden) erstellt
- 27. Wie können Zeitzonenabkürzungen ausgedruckt werden, wenn Offset-Stunden in Joda Time verwendet werden?
- 28. Wie werden die ersten Einträge in der Ansicht angezeigt?
- 29. Wie bekomme ich das 12-Stunden-Datum von DateTime
- 30. Reihenfolge der Zeitstempel alle drei Stunden
Titel bearbeiten, um es Google freundlich .. – Graviton