Ответы:
Вы можете изменить направление сортировки, чтобы получить минимальное вместо максимального значения:
# Sort by myfield (ascending value) and return first document
collection.find_one(sort=[("myfield", 1)])["myfield"]
В этом примере предполагается, что:
myfield является числовым значением (поэтому порядок сортировки имеет смысл определять минимум или максимум)myfieldсуществует в соответствующем возвращенном документе (в противном случае Python сообщит KeyErrorпри попытке сослаться на несуществующее поле).myfieldзначение (документы, у которых нет myfieldзначения, будут отсортированы до минимальных числовых значений)Чтобы убедиться, что сортировка основана на документах, которые действительно имеют myfieldзначение, которое вы можете добавить $existsв критерии запроса:
collection.find_one({"myfield": {"$exists": True}}, sort=[("myfield", 1)])["myfield"]
Для получения дополнительной информации о сортировке см .: