Ich bin gerade dabei herauszufinden, eine Möglichkeit, das nächste Datum eines Eintrags in MongoDB zu finden auf der Suche nach.Finden Sie das nächstgelegene Datum in einer Abfrage
Momentan löste ich das Problem mit 2 Abfragen. Man benutzt $ gte und limit (1), um nach dem nächstgrößeren Datum und dann nach $ lte - limit (1) zu suchen, um zu sehen, ob ein näherer Wert niedriger ist.
Ich frage mich, ob es eine Möglichkeit gibt, das nächste Datum in nur einer Abfrage zu finden, aber konnte nichts zu diesem Thema finden.
Hoffe, Sie können mir dabei helfen, oder zumindest sagen Sie mir sicher, dass dies der einzige Weg ist, dies zu tun.
db.collection.find({"time":{$gte: isoDate}}).sort({"time":1}).limit(1)
db.collection.find({"time":{$lte: isoDate}}).sort({"time":-1}).limit(1)
Aber ich bin auf der Suche nach einer Möglichkeit, diese in einer Abfrage zu tun, so dass ich die Ergebnisse subtrahieren müssen nicht auf die nächste zu finden.
Können Sie Ihre Frage bearbeiten, um einige Beispieldaten zu umfassen, erwartete Ausgabe und die Abfrage, die Sie versucht haben? – chridam