Sortieren nach Datum
In diesem letzten Schritt lernst du, wie du Dokumente in MongoDB nach Datum sortierst. Wir werden die Datenbank datelab
aus den vorherigen Schritten weiter verwenden und verschiedene Sortiertechniken untersuchen.
Stellen wir zunächst sicher, dass wir in der richtigen Datenbank sind:
use datelab
Fügen wir ein paar weitere Ereignisse hinzu, um einen vielfältigen Datensatz zu erstellen:
db.events.insertMany([
{
event_name: "AI-Sommerkongress",
date: new Date("2024-10-15T09:00:00Z"),
category: "Technologie"
},
{
event_name: "Blockchain-Workshop",
date: new Date("2024-05-22T14:30:00Z"),
category: "Finanzen"
},
{
event_name: "Cloud Computing Expo",
date: new Date("2024-03-10T11:15:00Z"),
category: "IT"
}
])
Untersuchen wir nun verschiedene Möglichkeiten, Dokumente nach Datum zu sortieren:
- Sortieren Sie Ereignisse in aufsteigender Reihenfolge (am frühesten bis am spätesten):
db.events.find().sort({ date: 1 })
- Sortieren Sie Ereignisse in absteigender Reihenfolge (am spätesten bis am frühesten):
db.events.find().sort({ date: -1 })
- Kombinieren Sie das Sortieren mit dem Filtern:
db.events.find({
category: "Technologie"
}).sort({ date: 1 })
- Fortgeschrittenes Sortieren mit mehreren Kriterien:
db.events.find().sort({
category: 1, // Sortieren Sie zuerst nach Kategorie
date: -1 // Dann nach Datum in absteigender Reihenfolge
})
Überprüfen wir unsere Sortierergebnisse:
db.events.find({}, {
event_name: 1,
date: 1,
category: 1
}).sort({ date: 1 })
Beispielausgabe:
[
{
_id: ObjectId("..."),
event_name: 'Cloud Computing Expo',
date: 2024-03-10T11:15:00.000Z,
category: 'IT'
},
{
_id: ObjectId("..."),
event_name: 'Blockchain Workshop',
date: 2024-05-22T14:30:00.000Z,
category: 'Finanzen'
},
{
_id: ObjectId("..."),
event_name: 'AI-Sommerkongress',
date: 2024-10-15T09:00:00.000Z,
category: 'Technologie'
}
]
Wichtige Punkte beim Sortieren:
1
: Aufsteigende Reihenfolge
-1
: Absteigende Reihenfolge
- Kann nach mehreren Feldern sortiert werden
- Funktioniert mit Daten, Zeichenketten und Zahlen