Mongodb: so sortieren sie dokumente nach datum
Sie können die folgenden Methoden verwenden, um Dokumente nach Datumsfeld in MongoDB zu sortieren:
Methode 1: Sortieren Sie nach aufsteigendem Datum
db.sales.find().sort({" date_field ": 1 })
Methode 2: Sortieren nach absteigendem Datum
db.sales.find().sort({" date_field ": -1 })
Die folgenden Beispiele zeigen, wie die einzelnen Methoden bei einem Sammelverkauf mit den folgenden Dokumenten verwendet werden:
db.sales.insertOne({day: new Date(" 2020-01-20 "), amount: 40 }) db.sales.insertOne({day: new Date(" 2020-01-21 "), amount: 32 }) db.sales.insertOne({day: new Date(" 2020-01-22 "), amount: 19 }) db.sales.insertOne({day: new Date(" 2020-01-23 "), amount: 29 }) db.sales.insertOne({day: new Date(" 2020-01-24 "), amount: 35 })
Beispiel 1: Sortieren nach aufsteigendem Datum
Mit dem folgenden Code können wir alle Dokumente nach Datum und in aufsteigender Reihenfolge sortieren:
db.sales.find().sort({" day ": 1 })
Diese Abfrage gibt die folgenden Ergebnisse zurück:
{ _id: ObjectId("6189401696cd2ba58ce928fa"), day: 2020-01-20T00:00:00.000Z, amount: 40 } { _id: ObjectId("6189401696cd2ba58ce928fb"), day: 2020-01-21T00:00:00.000Z, amount: 32 } { _id: ObjectId("6189401696cd2ba58ce928fc"), day: 2020-01-22T00:00:00.000Z, amount: 19 } { _id: ObjectId("6189401696cd2ba58ce928fd"), day: 2020-01-23T00:00:00.000Z, amount: 29 } { _id: ObjectId("6189401696cd2ba58ce928fe"), day: 2020-01-24T00:00:00.000Z, amount: 35 }
Beachten Sie, dass das Dokument mit dem ältesten Datum (20.01.2020) zuerst erscheint, während das Dokument mit dem neuesten Datum (24.01.2020) zuletzt erscheint.
Beispiel 2: Nach absteigendem Datum sortieren
Mit dem folgenden Code können wir alle Dokumente absteigend nach Datum sortieren:
db.sales.find().sort({" day ": -1 })
Diese Abfrage gibt die folgenden Ergebnisse zurück:
{ _id: ObjectId("6189401696cd2ba58ce928fe"), day: 2020-01-24T00:00:00.000Z, amount: 35 } { _id: ObjectId("6189401696cd2ba58ce928fd"), day: 2020-01-23T00:00:00.000Z, amount: 29 } { _id: ObjectId("6189401696cd2ba58ce928fc"), day: 2020-01-22T00:00:00.000Z, amount: 19 } { _id: ObjectId("6189401696cd2ba58ce928fb"), day: 2020-01-21T00:00:00.000Z, amount: 32 } { _id: ObjectId("6189401696cd2ba58ce928fa"), day: 2020-01-20T00:00:00.000Z, amount: 40 }
Beachten Sie, dass das Dokument mit dem aktuellsten Datum (24.01.2020) zuerst erscheint, während das Dokument mit dem ältesten Datum (20.01.2020) zuletzt erscheint.
Hinweis : Die vollständige Dokumentation zur Sortierfunktion finden Sie hier .
Zusätzliche Ressourcen
In den folgenden Tutorials wird erläutert, wie Sie andere gängige Vorgänge in MongoDB ausführen:
MongoDB: So fügen Sie ein neues Feld hinzu
MongoDB: So löschen Sie ein Feld
MongoDB: So gruppieren und zählen
MongoDB: So gruppieren Sie nach mehreren Feldern