MongoDB $ diafmonth $ diafWeek $ Dayofyear

MongoDB $ diafmonth $ diafWeek $ Dayofyear

O método do pipeline de agregação do MongoDB fornece os operadores de data para extrair o dia a partir da data. Dessas operadoras, temos $ diafmonth, $ Dayofweek e $ Dayofyear Operams, que recebem o dia de acordo. O operador $ Dayofmonth retorna o dia do mês para uma data específica como um número inteiro entre 1 e 31. O operador da Dayofweek gera um número entre 1 e 7 como o dia da semana. Em seguida, temos um operador de ano de US $ MongoDB que fornece um número inteiro entre 1 e 366 como o dia do ano para uma determinada data. Esses operadores de data tomam uma data como uma data de formato ISO ou um documento que define a data e o fuso horário para utilizar. O fuso horário usado por esses operadores para o resultado é uma especificação opcional. Todos esses operadores do MongoDB são semelhantes em implementação, mas a funcionalidade varia.

Como usar o $ diafmonth, $ DayOfWeek e $ Dayofyear em MongoDB

O $ Dayofmonth, $ DayOfWeek e o $ Dayofyear em MongoDB são usados ​​para obter o dia do mês, dia da semana e dia de ano. Dependendo do operador, selecionamos a data fornecida. Esses operadores lidam apenas com as datas em MongoDB, como seus nomes indicariam. Portanto, exigimos a coleção em MongoDB que consiste nos documentos de data. Aqui, estamos utilizando a coleção "compromisso" que usa o método insertMany () para inserir os seguintes documentos.

dB.Data do encontro.InsertMany ([

"_id": objectId ("63c7e2f7a54df35af58bbdf0"),
"Compromisso": "Hair Spa",
"Date": isodate ("2023-11-30T13: 10: 25.125z ")
,

"_id": objectId ("63c7e2f7a54df35af58bbdf1"),
"Compromisso": "cuidados com a pele",
"DATA": ISODATE ("2023-03-21T15: 25: 10.103Z ")
,

"_id": objectId ("63C7E2F7A54DF35AF58BBDF2"),
"Compromisso": "Extensão de unhas",
"DATA": ISODATE ("2022-12-30T20: 30: 15.123Z ")
,

"_id": objectId ("63C7E2F7A54DF35AF58BBDF3"),
"Compromisso": "maquiagem da festa",
"DATA": ISODATE ("2021-08-27T10: 05: 12.160Z ")
,

"_id": objectId ("63c7e2f7a54df35af58bbdf4"),
"Compromisso": "Spa de mão e pés",
"Date": Isodate ("2022-10-10T22: 21: 19.110Z ")

]))

Os documentos são inseridos dentro da coleção fornecida "NOVEMPATE" de acordo com a saída obtida abaixo. Agora, podemos empregar o $ Dayofmonth, $ Dayofweek e o Operador de ano de ano durante esses documentos de data para obter o dia a partir da data de acordo.


reconhecido: verdadeiro,
inserdids:
'0': objectId ("63C7E2F7A54DF35AF58BBDF0"),
'1': objectId ("63C7E2F7A54DF35AF58BBDF1"),
'2': objectId ("63C7E2F7A54DF35AF58BBDF2"),
'3': objectId ("63C7E2F7A54DF35AF58BBDF3"),
'4': objectId ("63C7E2F7A54DF35AF58BBDF4")

Exemplo # 1: Usando o Operador $ Dayofmonth para obter o dia do mês em MongoDB

O operador $ diafmonth está empregado primeiro para obter o dia do mês a partir da data fornecida. Utilizamos o operador de projeto $ onde o operador $ Dayofmonth está sendo chamado para realizar a operação de buscar o dia do mês. O operador $ diafmonth é definido com a expressão de "$ data". A partir da data do campo, o $ diafmonth chegará ao dia do dia do campo projetado "encomendamento do diafórico".

dB.Data do encontro.agregar(
[[

$ projeto:

_id: 0,
"Comprometimento do diafmonth": $ diafmonth: "$ date"


]
).bonito()

O $ Dayofmonth Operator resolve todos os valores da data dentro do campo de data de $ e retorna o dia do mês, que está na faixa de "1" a "31".

[[
Encomendar diafmonth: 30,
Compromisso,
Encomendar diafmonth: 30,
Compromisso,
Compromisso
]

Exemplo # 2: Usando o Operador $ Dayofmonth para obter o dia do mês em um fuso horário especificado em MongoDBB

Podemos especificar um fuso horário a ser usado para a saída do operador $ Dayofmonth. O fuso horário é especificado usando o deslocamento do UTC neste exemplo do operador $ DayOfmonth. Mas podemos fornecer quaisquer especificações do fuso horário para o operador $ Dayofmonth para obter o dia do mês daquela região em particular. Definimos o Operador de Projeto $ onde ocultamos o campo "_id" atribuindo o valor "0". Depois disso, criamos o campo "UtCoffSet1" para invocar o operador $ Dayofmonth. O operador $ Dayofmonth assume o campo de data de $ como um valor de argumento de "data" e o argumento do fuso horário como um deslocamento "-1000" UTC. Em seguida, criamos outro campo "UTCOFFSET2" no estágio $ Project para realizar outra operação do operador $ DayOfonth com o Filho horário de offset UTC. Aqui, especificamos o argumento do fuso horário com o deslocamento da UTC "+1200" para o campo de data de $.

dB.Data do encontro.agregar(
[[

$ projeto:
_id: 0,
"Utcoffset1":
$ diafmonth: date: "$ date", fuso horário: "-0900"
,
"Utcoffset2":
$ diafmonth: date: "$ date", fuso horário: "+1100"



]
).bonito()

O dia resultante do mês no fuso horário de deslocamento do UTC especificado do operador $ Dayofmonth é exibido da seguinte forma.

[[
utcoffset1: 30, utcoffset2: 1,
utcoffset1: 21, utcoffset2: 22,
utcoffset1: 30, utcoffset2: 31,
utcoffset1: 27, utcoffset2: 27,
utcoffset1: 10, utcoffset2: 11
]

Exemplo # 3: Usando o Operador $ Dayofweek para obter o dia da semana em MongoDB

O $ DATEOFWEEK Operator é usado da mesma maneira que definimos o $ diafmonth em MongoDB. A única diferença está em suas funcionalidades. O operador $ DayOfWeek é usado para obter o dia da semana a partir da data. Utilizamos o operador $ DayofWeek no campo "compromisso no diafWeek", que é definido na fase $ do projeto. Depois disso, o $ DayOfWeek Operator é atribuído com o campo de data para obter o valor da semana.

dB.Data do encontro.agregar(
[[

$ projeto:

_id: 0,
Comprometimento do diafWeek: $ DayOfWeek: "$ date"


]
).bonito()

O $ DayOfWeek retornou no dia da semana como um valor numérico entre "1" e "7" abaixo. O número "1" indica "domingo", que é o dia padrão da semana e o "7" é indicado como um dia "sábado".

[[
Compromisso,
Compromisso,
Encomendar diafWeek: 6,
Encomendar diafWeek: 6,
Encomendar diafWeek: 2
]

Exemplo # 4: Usando o operador de ano para o ano para obter o dia do ano em MongoDB

Agora, temos um operador de ano de $ que retorna o dia do dia da data como uma figura numérica. O ano do ano é implantado aqui dentro do campo "AFOMPEDADEOFIDO", que é criado no estágio de $ Project. O ano de ano está definido com o campo de data "$ data" do documento. O ano do ano nos dará um valor inteiro como o dia do ano a partir do valor da data fornecida. O número de um ano está entre o número 1 e 366.

dB.Data do encontro.agregar(
[[

$ projeto:

_id: 0,
Compromisso do ano: $ Dayofyear: "$ date"


]
)

O operador de ano do ano recupera os dias do ano a partir de todos os documentos de data incluídos na coleção.

[[
Compromisso,
Encomendar diaofreio: 80,
Compromisso,
Compromisso,
Compromisso
]

Exemplo # 5: Usando o $ DayOfmonth, $ Dayofday e $ Dayofyear Operator com outras expressões de data em MongoDBB

O exemplo a seguir usa outros operadores de data junto com os operadores $ DayOfmonth, $ DayOfWeek e $ Dayofyear para dividir os elementos da data. Temos um estágio de Match $, onde a expressão é dada como "compromisso": "Skin Care" para corresponder ao documento com o valor fornecido. Quando o documento será comparado, o estágio de $ do projeto é realizado onde criamos os diferentes campos para diferentes operações de data. Todos os campos contêm o operador de data junto com os operadores $ Dayofday, $ Dayofmonth e $ Dayofyear. Esses operadores retornarão valores numéricos de acordo com o operador que definimos para os campos.

dB.Data do encontro.agregar(
[[
$ Match: "compromisso": "Skin Care",

$ projeto:

Ano: $ ano: "$ date",
mês: $ mês: "$ date",
Dayofmonth: $ Dayofmonth: "$ date",
Hora: $ Hour: "$ DATE",
minutos: $ minuto: "$ date",
segundos: $ Second: "$ DATE",
MillisEconds: $ millisEcond: "$ date",
Dayofyear: $ Dayofyear: "$ date",
DayofWeek: $ DayOfWeek: "$ DATE",
Semana: $ semana: "$ date"


]
)

Temos a saída que mostra os valores de data separados dos operadores de data.

[[

_id: 2,
Ano: 2023,
Mês: 3,
Dayofday: 21,
Hora: 15,
Minutos: 25,
segundos: 10,
milissegundos: 103,
Dayofyear: 80,
Dayofweek: 3,
Semana: 12

]

Conclusão

O guia do operador de data do MongoDB, que inclui $ Dayofmonth, $ DayofWeek e $ Dayofyear Operators. Discutimos cada um dos operadores com o programa de exemplo. O operador $ Dayofmonth foi usado no primeiro exemplo para obter o dia do mês. Em seguida, usamos o operador $ Dayofmonth com o parâmetro do fuso horário para obter o dia do mês no fuso horário fornecido. Em seguida, demonstramos o operador $ Dayofweek para o dia da semana dos valores da data atribuída. Por fim, temos um exemplo do operador de ano do ano que nos ajuda a conhecer o dia do ano a partir da data definida.