Puede invertir la dirección de clasificación para obtener el valor mínimo en lugar del máximo:
# Sort by myfield (ascending value) and return first document
collection.find_one(sort=[("myfield", 1)])["myfield"]
Este ejemplo supone que:
myfield es un valor numérico (por lo que el orden de clasificación tiene sentido para determinar un mínimo o un máximo)
myfieldexiste en el documento coincidente devuelto (de lo contrario, Python informará a KeyErrorcuando intente hacer referencia a un campo inexistente).
- Todos los documentos de la colección tienen un
myfieldvalor (los documentos que no tienen un myfieldvalor se ordenarán antes que los valores numéricos mínimos)
Para garantizar que su clasificación se base en documentos que realmente tienen un myfieldvalor que puede agregar $existsa los criterios de consulta:
collection.find_one({"myfield": {"$exists": True}}, sort=[("myfield", 1)])["myfield"]
Para obtener más información sobre la clasificación, consulte: