Tôi đang sử dụng SQLAlchemy để lưu trữ một số đối tượng với một trường DateTime:Python SqlAlchemy order_by DateTime?
my_date = Field(DateTime())
Tôi muốn chạy một truy vấn để lấy vài đối tượng gần đây nhất (Các đối tượng với lĩnh vực my_date mà gần đây nhất) .
Tôi đã thử những điều sau đây:
entities = MyEntity.query.order_by(MyEntity.time).limit(3).all()
entities = MyEntity.query.order_by(-MyEntity.time).limit(3).all()
Nhưng các truy vấn này trả lại cùng một đối tượng theo thứ tự. Các tài liệu SqlAlchemy ghi chú việc sử dụng các '-' để đảo ngược thứ tự, nhưng tôi chắc chắn thiếu một cái gì đó ở đây.
Có ai giúp được không?
Thao tác này rất chậm trên cơ sở dữ liệu của tôi. Có cách nào nhanh hơn không? – kalu
@kalu: Bạn có đang sử dụng các chỉ mục phù hợp không? Hãy thử nhìn vào SQL đã tạo và cấu hình nó. – thirtydot