Anda dapat membalikkan arah pengurutan untuk mendapatkan nilai minimum alih-alih nilai maksimum:
# Sort by myfield (ascending value) and return first document
collection.find_one(sort=[("myfield", 1)])["myfield"]
Contoh ini mengasumsikan bahwa:
myfield
adalah nilai numerik (sehingga urutan sortir masuk akal untuk menentukan minimum atau maksimum)
myfield
ada dalam dokumen yang cocok yang dikembalikan (jika tidak, Python akan melaporkan KeyError
ketika mencoba referensi bidang yang tidak ada).
- semua dokumen dalam koleksi memiliki
myfield
nilai (dokumen yang tidak memiliki myfield
nilai akan diurutkan sebelum nilai numerik minimum)
Untuk memastikan penyortiran Anda didasarkan pada dokumen yang benar-benar memiliki myfield
nilai, Anda dapat menambahkan $exists
kriteria permintaan:
collection.find_one({"myfield": {"$exists": True}}, sort=[("myfield", 1)])["myfield"]
Untuk informasi lebih lanjut tentang penyortiran, lihat: