MongoDB Aggregation Pipeline -metoden gir datooperatørene for å trekke ut dagen fra datoen. Fra disse operatørene har vi $ DayOfmonth, $ DayOfweek og $ Dayofyear -operatører som får dagen deretter. Operatøren på $ DayOfmonth returnerer månedens dag for en bestemt dato som et heltall mellom 1 og 31. Dayofweek -operatøren genererer et tall mellom 1 og 7 som ukens dag. Deretter har vi en $ Dayofyear -operatør i MongoDB som gir et heltall mellom 1 og 366 som dagen for året for en gitt dato. Disse datooperatørene tar en dato som en ISO -formatdato eller et dokument som definerer dato og tidssone for å bruke. Tidssonen som brukes av disse operatørene for utfallet er en valgfri spesifikasjon. Alle disse operatørene av MongoDB er like i implementeringen, men funksjonaliteten varierer.
Hvordan bruke $ DayOfmonth, $ dayofweek og $ dayofyear i MongoDB
$ DayOfmonth, $ dayofweek og $ dayofyear i MongoDB brukes til å få månedens dag, ukedag og årsdag. Avhengig av operatøren har vi valgt den oppgitte datoen. Disse operatørene håndterer utelukkende datoene i MongoDB, som navnene deres skulle indikere. Så vi krever samlingen i MongoDB som består av datodokumentene. Her bruker vi "DepartmentDate" -samlingen som bruker InsertMany () -metoden for å sette inn følgende dokumenter.
db.Avtaledato.INSERTMANY ([Dokumentene settes inn i den gitte samlingen “Avtalerdato” i henhold til utdata oppnådd nedenfor. Nå kan vi ansette $ DayOfmonth, $ DayOfweek og $ Dayofyear -operatøren over disse dato -dokumentene for å få dagen fra datoen deretter.
Eksempel 1: Bruke operatøren på $ DayOfmonth for å få måneden i måneden i MongoDB
$ DayOfmonth -operatøren er ansatt først for å få dagen i måneden fra den gitte datoen. Vi har brukt $ prosjektoperatøren der $ DayOfmonth -operatøren blir kalt til å utføre driften av å hente månedsdagen. $ DayOfmonth -operatøren er definert med uttrykket “$ date”. Fra feltet $ dato vil $ DayOfmonth få månedsdagen inn i det anslåtte feltet "AvtalerdayOfmonth".
db.Avtaledato.aggregat (Operatøren på $ DayOfmonth løser alle datoverdiene innen $ dato -feltet og returnerer månedsdagen som ligger i et område fra “1” til “31”.
[Eksempel nr. 2: Bruke operatøren på $ DayOfmonth for å få dagen i måneden i en spesifikk tidssone i MongoDB
Vi kan spesifisere en tidssone som skal brukes til utdataene fra operatøren på $ DayOfmonth. Tidssonen er spesifisert ved hjelp av UTC -forskyvningen i dette eksemplet på $ DayOfmonth -operatøren. Men vi kan gi alle tidsspesifikasjoner til operatøren på $ DayOfmonth for å få dagen i måneden i den aktuelle regionen. Vi har satt $ prosjektoperatøren der vi skjuler "_id" -feltet ved å tilordne verdien "0". Etter det opprettet vi feltet “UTCOFFSET1” for å påkalle $ DayOfmonth -operatøren. Operatøren på $ DayOfmonth tar $ dato-feltet som en "dato" argumentverdi og tidssone-argumentet som et "-1000" UTC-forskyvning. Deretter opprettet vi et annet felt “UTCOFFSET2” i $ Project Stage for å utføre en annen operasjon av $ DayOfmonth -operatøren med UTC Offset Timezone. Her har vi spesifisert tidssone -argumentet med UTC -forskyvningen “+1200” for $ dato -feltet.
db.Avtaledato.aggregat (Den resulterende dagen i måneden i den spesifiserte UTC Offset TimeZone fra $ DayOfmonth -operatøren vises som følger.
[Eksempel nr. 3: Bruke operatøren på $ Dayofweek for å få ukens dag i MongoDB
$ DateOfweek -operatøren brukes på samme måte som vi har satt $ DayOfmonth i MongoDB. Den eneste forskjellen er i funksjonalitetene deres. Operatøren på $ DayOfweek brukes til å få ukedagen fra datoen. Vi har brukt $ DayOfWeek -operatøren i feltet "Avtaleredayofweek" som er definert i $ Project Stage. Etter det tildeles $ DayOfWeek -operatør.
db.Avtaledato.aggregat ($ Dayofweek returnerte ukens dag som en numerisk verdi mellom “1” og “7” nedenfor. Nummeret “1” indikerer “Sunday” som er standardens dag og “7” er betegnet som en dag “lørdag”.
[Eksempel nr. 4: Bruke operatøren på $ DayOfyear for å få dagen i året i MongoDB
Nå har vi en $ dayofyear -operatør som returnerer dagen for datoen som et numerisk figur. $ Dayofyear er distribuert her inne i feltet "avtale dagsyear" som er opprettet i $ prosjektstadiet. $ Dayofyear er satt med datofeltet "$ dato" fra dokumentet. $ Dayofyear vil gi oss en heltallsverdi som dagen for året fra den oppgitte datoverdien. Årsdagsnummeret ligger mellom nummer 1 til 366.
db.Avtaledato.aggregat ($ DayOfyear -operatøren henter årets dager fra alle dato -dokumenter som er inkludert i samlingen.
[Eksempel 5: Bruke $ DayOfmonth, $ DayOfDay og $ DayOfyear -operatøren med andre datouttrykk i MongoDB
Følgende eksempel bruker andre datooperatører sammen med $ DayOfmonth, $ dayofweek og $ dayofyear -operatørene for å dele datoelementene. Vi har et $ Match Stage der uttrykket er gitt som “avtale”: “Skin Care” for å matche dokumentet med den gitte verdien. Når dokumentet vil bli matchet, utføres $ prosjektstadiet der vi har opprettet de forskjellige feltene for forskjellige datooperasjoner. Alle feltene inneholder datooperatøren sammen med $ DayOfDay, $ DayOfmonth og $ Dayofyear -operatørene. Disse operatørene vil returnere numeriske verdier i henhold til operatøren vi har satt til feltene.
db.Avtaledato.aggregat (Vi har utdataene som viser de separate datoverdiene fra datooperatørene.
[Konklusjon
Guiden til MongoDB -datooperatøren som inkluderer $ DayOfmonth, $ DayOfWeek og $ DayOfyear -operatører. Vi har diskutert hver av operatørene med eksempelprogrammet. $ DayOfmonth -operatøren ble brukt i det første eksemplet for å få månedsdagen. Deretter brukte vi $ DayOfmonth -operatøren med tidssone -parameteren for å få månedsdagen i den oppgitte tidssonen. Deretter demonstrerte vi $ DayOfWeek -operatøren for ukedagen til de tildelte datoverdiene. Til slutt har vi et eksempel på $ DayOfyear -operatøren som hjelper oss å kjenne dagen til året fra den faste datoen.