ich sqlalchemy bin mit mit einem Datetime-Feld einige Objekte zu speichern:Python SqlAlchemy order_by DateTime?
my_date = Field(DateTime())
würde Ich mag eine Abfrage auszuführen, die letzten paar Objekte (Entities mit dem my_date Feld, das die jüngsten sind) abrufen .
Ich habe folgendes versucht:
entities = MyEntity.query.order_by(MyEntity.time).limit(3).all()
entities = MyEntity.query.order_by(-MyEntity.time).limit(3).all()
Aber diese Anfragen die gleichen Objekte in der gleichen Reihenfolge zurück. Die SqlAlchemy-Dokumentation notiert die Verwendung des '-', um die Reihenfolge umzukehren, aber ich vermisse hier sicher etwas.
Kann jemand helfen?
Dieser Vorgang ist schmerzhaft langsam auf meiner Datenbank. Gibt es einen schnelleren Weg? – kalu
@kalu: Verwenden Sie geeignete Indizes? Sehen Sie sich das generierte SQL an und profilieren Sie es. – thirtydot