Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.
$hour
Der $hour Operator extrahiert die Stundenkomponente aus einem Datums- oder Zeitstempelfeld.
Parameter
-
dateExpression: Das Datum, auf das der Operator angewendet wird. Dies muss ein gültiges BSON-Datum ergeben (z. B. ein Feld wie $createdAt oder ein Datumsliteral).
Ein Parameter kann auch als Dokument im folgenden Format angegeben werden:
{Datum:<dateExpression>, Zeitzone:<timezoneExpression>}
Dies ermöglicht die Anwendung zeitzonenorientierter Datumsoperationen.
- `<tzExpression>`: (optional) The timezone of the operation result. It must be a valid expression that resolves to a string formatted as either an Olson Timezone Identifier or a UTC Offset. If no timezone is provided, the result is in UTC.
Beispiel (MongoDB Shell)
Das folgende Beispiel zeigt, wie der $hour Operator verwendet wird, um die Stundenkomponente aus einem Datumsfeld zu extrahieren und die Daten entsprechend zu gruppieren.
Erstellen Sie Beispieldokumente
db.events.insertMany([ { timestamp: new Date("2023-04-01T10:30:00Z") }, { timestamp: new Date("2023-04-01T12:45:00Z") }, { timestamp: new Date("2023-04-02T08:15:00Z") }, { timestamp: new Date("2023-04-02T16:20:00Z") }, { timestamp: new Date("2023-04-03T23:59:00Z") } ]);
Beispiel für eine Abfrage
db.events.aggregate([ { $project: { hour: { $hour: "$timestamp" } } }, { $group: { _id: "$hour", count: { $sum: 1 } } }, { $sort: { _id: 1 } } ]);
Ausgabe
[
{ "_id": 8, "count": 1 },
{ "_id": 10, "count": 1 },
{ "_id": 12, "count": 1 },
{ "_id": 16, "count": 1 },
{ "_id": 23, "count": 1 }
]
Diese Abfrage gruppiert die Ereignisse nach der Stundenkomponente des timestamp Felds und zählt die Anzahl der Ereignisse für jede Stunde.
Codebeispiele
Um ein Codebeispiel für die Verwendung des $hour Befehls anzuzeigen, wählen Sie die Registerkarte für die Sprache, die Sie verwenden möchten: