MongoDB $ Dayofmonth $ Dayofweek $ Dayofyear

MongoDB $ Dayofmonth $ Dayofweek $ Dayofyear

Die MongoDB -Aggregationspipeline -Methode bietet den Datumsangestellten, den Tag ab dem Datum zu extrahieren. Von diesen Betreibern haben wir Dayofmonth, $ Dayofweek und Dayofyear -Betreiber, die den Tag entsprechend erhalten. Der $ Dayofmonth -Betreiber kehrt den Monatstag für ein bestimmtes Datum als Ganzzahl zwischen 1 und 31 zurück. Der Operator von Tagofweek erzeugt eine Zahl zwischen 1 und 7 als Wochentag. Als Nächst. Diese Datumsbetreiber nehmen ein Datum als ISO -Formatdatum oder ein Dokument an, das das Datum und die Zeitzone definiert. Die von diesen Operatoren für das Ergebnis verwendete Zeitzone ist eine optionale Spezifikation. Alle diese Operatoren von MongoDB sind in der Implementierung ähnlich, die Funktionalität variiert jedoch.

So verwenden Sie den $ tayofmonth, $ Dayofweek und $ Dayofyear in MongoDB

Der $ Dayofmonth, $ Dayofweek und der $ Dayofyear in MongoDB werden verwendet, um den Monat, den Wochentag und den Yardayday zu erhalten. Abhängig vom Betreiber haben wir das angegebene Datum ausgewählt. Diese Betreiber befassen sich ausschließlich mit den Daten in MongoDB, wie ihre Namen angeben würden. Wir benötigen also die Sammlung in MongoDB, die aus den Datumsdokumenten besteht. Hier verwenden wir die Kollektion „TerminDate“, mit der die Methode InsertManMy () verwendet wird, um die folgenden Dokumente einzufügen.

db.Termin.InsertMany ([

"_id": ObjectID ("63C7E2F7A54DF35AF58BBDF0"),
"Termin": "Haarspa",
"Datum": Isodat ("2023-11-30T13: 10: 25.125Z ")
,

"_id": ObjectID ("63C7E2F7A54DF35AF58BBDF1"),
"Termin": "Hautpflege",
"Datum": Isodat ("2023-03-21T15: 25: 10.103Z ")
,

"_id": ObjectID ("63C7E2F7A54DF35AF58BBDF2"),
"Termin": "Nagelerweiterung",
"Datum": Isodat ("2022-12-30T20: 30: 15.123Z ")
,

"_id": ObjectID ("63C7E2F7A54DF35AF58BBDF3"),
"Termin": "Party Make -up",
"Datum": Isodat ("2021-08-27T10: 05: 12.160Z ")
,

"_id": ObjectID ("63C7E2F7A54DF35AF58BBDF4"),
"Termin": "Hand und Füße Spa",
"Datum": Isodat ("2022-10-10T22: 21: 19.110Z ")

]))

Die Dokumente werden in der angegebenen Sammlung „TerminDate“ gemäß der unten erzielten Ausgabe eingefügt. Jetzt können wir den $ Dayofmonth, den $ DayofWeek und den $ Dayofyear -Betreiber über diese Datumsdokumente einsetzen, um den Tag ab dem Datum entsprechend zu erhalten.


Anerkannt: wahr,
InsertDIDs:
'0': ObjectID ("63C7E2F7A54DF35AF58BBDF0"),
'1': ObjectID ("63C7E2F7A54DF35AF58BBDF1"),
'2': ObjectID ("63C7E2F7A54DF35AF58BBDF2"),
'3': ObjectID ("63C7E2F7A54DF35AF58BBDF3"),
'4': ObjectID ("63C7E2F7A54DF35AF58BBDF4")

Beispiel Nr. 1: Verwenden Sie den $ Dayofmonth -Operator, um den Tag des Monats in MongoDB zu erhalten

Der $ Dayofmonth -Betreiber ist zuerst beschäftigt, um den Tag des Monats ab dem angegebenen Datum zu erhalten. Wir haben den $ Project -Betreiber genutzt, bei dem der $ Dayofmonth -Betreiber gerufen wird, um den Betrieb des Abholens des Monatstages durchzuführen. Der $ Dayofmonth -Operator ist mit dem Ausdruck von „$ Datum“ definiert,. Aus dem Feld $ Date wird der $ Dayofmonth den Monatstag in den projizierten Feld „Terminagestag“ einbezogen.

db.Termin.Aggregat(
[

$ project:

_id: 0,
"Termindayofmonth": $ Dayofmonth: "$ Date"


]
).hübsch()

Der $ Dayofmonth -Betreiber löst alle Datumswerte innerhalb des Feldes $ Datum und kehrt den Monatstag zurück, der in einer Reichweite von „1“ bis „31“ liegt.

[
Termindayofmonth: 30,
Termindayofmonth: 21,
Termindayofmonth: 30,
Termindayofmonth: 27,
Termindayofmonth: 10
]

Beispiel Nr. 2: Verwenden Sie den $ Dayofmonth -Operator, um den Tag des Monats in einer bestimmten Zeitzone in MongoDB zu erhalten

Wir können eine Zeitzone angeben, die für die Ausgabe des $ Dayofmonth -Operators verwendet werden kann. Die Zeitzone wird in diesem Beispiel des $ Dayofmonth -Operators mit dem UTC -Offset angegeben. Wir können dem $ DayOfMonth -Betreiber jedoch alle Zeitzon -Spezifikationen bereitstellen, um den Tag des Monats dieser bestimmten Region zu erhalten. Wir haben den $ Project -Operator festgelegt, in dem wir das Feld "_id" verbergen, indem wir den Wert "0" zugewiesen haben. Danach haben wir das Feld "UTCOFFSET1" erstellt, um den $ Dayofmonth -Operator aufzurufen. Der $ Dayofmonth-Operator nimmt das Feld $ Datum als "Datum" -Argumentwert und das Timezone-Argument als UTC-Offset "-1000". Anschließend haben wir in der $ Project -Phase ein weiteres Feld „UTCOFFSET2“ erstellt, um einen weiteren Betrieb des $ Dayofmonth -Operators mit der UTC -Offset Timezone durchzuführen. Hier haben wir das Timezone -Argument mit dem UTC -Offset "+1200" für das Feld $ Date angegeben.

db.Termin.Aggregat(
[

$ project:
_id: 0,
"utcoffset1":
$ Dayofmonth: Datum: "$ Date", TimeZone: "-0900"
,
"utcoffset2":
$ Dayofmonth: Datum: "$ Date", TimeZone: "+1100"



]
).hübsch()

Der resultierende Tag des Monats im angegebenen UTC -Offset -Zeitzone aus dem $ Dayofmonth -Operator wird wie folgt angezeigt.

[
UTCOFFSET1: 30, UTCOFFSET2: 1,
UTCOFFSET1: 21, UTCOFFSET2: 22,
UTCOFFSET1: 30, UTCOFFSET2: 31,
UTCOFFSET1: 27, UTCOFFSET2: 27,
UTCOFFSET1: 10, UTCOFFSET2: 11
]

Beispiel Nr. 3: Verwenden Sie den $ Dayofweek -Betreiber, um den Wochentag in MongoDB zu erhalten

Der $ DateOfWeek -Betreiber wird genauso verwendet, wie wir den $ Dayofmonth in MongoDB festgelegt haben. Der einzige Unterschied besteht in ihren Funktionen. Der $ Dayofweek -Betreiber wird verwendet, um den Wochentag ab dem Datum zu erhalten. Wir haben den $ DayofWeek -Betreiber im Bereich „Termintagesofweek“ verwendet, das in der $ Project -Phase definiert ist. Danach wird $ DayofWeek -Betreiber mit dem Feld $ Datum zugewiesen, um den Wochentagswert zu erhalten.

db.Termin.Aggregat(
[

$ project:

_id: 0,
Artedayofweek: $ Dayofweek: "$ Date"


]
).hübsch()

Die $ Dayofweek kehrte den Wochentag als numerischen Wert zwischen „1“ und „7“ unten zurück. Die Zahl "1" zeigt "Sonntag" an, was der Standardtag der Woche ist, und der "7" wird als "Samstag" bezeichnet, der als "Samstag" bezeichnet wird.

[
Termindayofweek: 5,
Termindayofweek: 3,
Termindayofweek: 6,
Termindayofweek: 6,
Termindayofweek: 2
]

Beispiel Nr. 4: Verwenden Sie den $ DayoFyear -Betreiber, um den Tag des Jahres in MongoDB zu erhalten

Jetzt haben wir einen $ DayoFyear -Betreiber, der den Jahr des Datums als numerische Figur zurückgibt. Der $ Dayofyear wird hier im Feld „Termin für Tagofyear“ eingesetzt, das in der $ Project -Phase erstellt wird. Der $ Dayofyear wird mit dem Datumsfeld "$ Date" aus dem Dokument festgelegt. Der $ Dayofyear gibt uns einen ganzzahligen Wert als Tag des Jahres ab dem bereitgestellten Datumswert. Die jährliche Zahl liegt zwischen der Zahl 1 bis 366.

db.Termin.Aggregat(
[

$ project:

_id: 0,
Artedayofyear: $ Dayofyear: "$ Date"


]
)

Der $ Dayofyear -Betreiber setzt die Tage des Jahres von allen in der Sammlung enthaltenen Datumsdokumenten ab.

[
Termindayofyear: 334,
Termindayofyear: 80,
Termindayofyear: 364,
Termindayofyear: 239,
Termindayofyear: 283
]

Beispiel Nr. 5: Verwenden Sie den $ Dayofmonth, $ Dayofday und $ Dayofyear -Betreiber mit anderen Datumsausdrücken in MongoDB

Das folgende Beispiel verwendet andere Datumsbetreiber zusammen mit den $ Dayofmonth, $ Dayofweek und $ Dayofyear -Betreibern, um die Datumselemente aufzuteilen. Wir haben eine $ Match -Phase, in der der Ausdruck als "Termin": "Hautpflege" angegeben wird, um das Dokument mit dem angegebenen Wert zu entsprechen. Wenn das Dokument übereinstimmt. Alle Felder enthalten den Datumsbetreiber zusammen mit den $ Dayofday, $ Dayofmonth und $ Dayofyear -Betreibern. Diese Betreiber geben numerische Werte gemäß dem von uns auf die Felder festgelegten Betreiber zurück.

db.Termin.Aggregat(
[
$ Match: "Termin": "Skin Care",

$ project:

Jahr: $ Jahr: "$ Date",
Monat: $ Monat: "$ Date",
Dayofmonth: $ Dayofmonth: "$ Date",
Stunde: $ Hour: "$ Date",
Minuten: $ Minute: "$ Date",
Sekunden: $ Second: "$ Date",
Millisekunden: $ Millisecond: "$ Date",
Dayofyear: $ Dayofyear: "$ Date",
Dayofweek: $ Dayofweek: "$ Date",
Woche: $ Woche: "$ Date"


]
)

Wir haben die Ausgabe, die die getrennten Datumswerte der Datumsangebote anzeigt.

[

_id: 2,
Jahr: 2023,
Monat: 3,
Dayofday: 21,
Stunde: 15,
Minuten: 25,
Sekunden: 10,
Millisekunden: 103,
Dayofyear: 80,
Tagofweek: 3,
Woche: 12

]

Abschluss

Der Leitfaden zum MongoDB -Date -Betreiber, der Dayofmonth, $ Dayofweek und Dayofyear -Betreiber von $ tonmonth enthält. Wir haben jeden Betreiber mit dem Beispielprogramm besprochen. Der $ Dayofmonth -Operator wurde im ersten Beispiel verwendet, um den Monatstag zu bekommen. Anschließend haben wir den $ Dayofmonth -Operator mit dem Zeitzone -Parameter verwendet, um den Monatstag in der bereitgestellten Zeitzone zu erhalten. Als Nächst. Zuletzt haben wir ein Beispiel für den $ DayoFyear -Betreiber, der uns hilft, den Tag des Jahres ab dem festgelegten Datum zu kennen.