$dayOfWeek (Obter Dia da Semana)

Última atualização: 2026-10-09

$dayOfWeek (Obter Dia da Semana)

$dayOfWeek retorna o dia da semana de uma data como inteiro: 1 é domingo, 7 é sábado — igual ao Date.getDay() do JavaScript. Frequentemente usado para estatísticas de tráfego por dia da semana ou agendamento. Observe que a numeração começa no domingo, diferente do $isoDayOfWeek da ISO (segunda-feira é 1), então confirme a semântica necessária. timezone define o limite do dia da semana e tem UTC como padrão.

CategoriaData
Versão do MongoDB1.0+
Idioma do Exemplomongosh (Shell)

📝 Sintaxe

{ $dayOfWeek: { date: <expressão de data>, timezone: <fuso horário> } }

⚙️ Parâmetros

dateObrigatório; a expressão de data.
timezoneFuso horário opcional; o padrão é UTC.

Retorno:Número do dia da semana (1=domingo, 7=sábado); null se date for null.

▶ Exemplo

Execute os comandos abaixo no seu mongosh local (requer um mongod em execução):

// $dayOfWeek: contar visitas por dia da semana (horário de Pequim)
db.logs.aggregate([
  { $group: {
      _id: { $dayOfWeek: { date: '$ts', timezone: 'Asia/Shanghai' } },
      cnt: { $sum: 1 }
  } }
])

Saída:

{ "_id": 1, "cnt": 1240 }
{ "_id": 2, "cnt": 980 }

📌 Notas

Mais casos práticos em breve.

📚 Tutoriais Relacionados

❓ Perguntas Frequentes

QQue dia é o 1?
A1 é domingo, 7 é sábado — igual ao getDay do JavaScript.
QComo obter numeração começando na segunda-feira?
AUse $isoDayOfWeek: 1 é segunda-feira, 7 é domingo.
QConsigo obter o nome do dia da semana diretamente?
ANão — converta com $switch ou o marcador %A de $dateToString.
Web-Tutorial.com

Equipe Técnica Web-Tutorial

Uma plataforma de tutoriais mantida por diversos desenvolvedores. Cada tutorial é escrito e revisado por profissionais da área correspondente. Trabalhamos para manter nosso conteúdo preciso e confiável — se encontrar algum problema, avise-nos.

100%