Bạn có thể đảo ngược hướng sắp xếp để lấy giá trị tối thiểu thay vì giá trị tối đa:
# Sort by myfield (ascending value) and return first document
collection.find_one(sort=[("myfield", 1)])["myfield"]
Ví dụ này giả định rằng:
myfield là một giá trị số (vì vậy thứ tự sắp xếp có ý nghĩa để xác định mức tối thiểu hoặc tối đa)
myfieldtồn tại trong tài liệu phù hợp được trả về (nếu không Python sẽ báo cáo KeyErrorkhi cố gắng tham chiếu trường không tồn tại).
- tất cả các tài liệu trong bộ sưu tập đều có một
myfieldgiá trị (các tài liệu không có myfieldgiá trị sẽ được sắp xếp trước các giá trị số tối thiểu)
Để đảm bảo sắp xếp của bạn dựa trên các tài liệu thực sự có myfieldgiá trị, bạn có thể thêm $existsvào tiêu chí truy vấn:
collection.find_one({"myfield": {"$exists": True}}, sort=[("myfield", 1)])["myfield"]
Để biết thêm thông tin về sắp xếp, xem: