Я в настоящее время пытаюсь найти способ найти ближайшую дату записи в mongoDB в on, которую я ищу.Найти ближайшую дату в одном запросе
В настоящее время я решил проблему, используя 2 запроса. Один из них использует $ gte и limit (1) для поиска следующей более крупной даты, а затем $ lte - limit (1), чтобы увидеть, есть ли более близкое к тому, что может быть ниже.
Мне было интересно, возможно ли найти ближайшую дату только в одном запросе, но не смог найти что-либо в этом отношении.
Надеюсь, вы сможете помочь мне с этим или, по крайней мере, сказать мне, что это единственный способ сделать это.
db.collection.find({"time":{$gte: isoDate}}).sort({"time":1}).limit(1)
db.collection.find({"time":{$lte: isoDate}}).sort({"time":-1}).limit(1)
Но я ищу способ сделать это в одном запросе, поэтому я не должен вычесть результаты, чтобы найти ближайший один.
Можете ли вы изменить свой вопрос, чтобы включить некоторые выборочные данные, ожидаемые результаты и запрос вы пробовали? – chridam