$push (Reunir em Array)

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

$push (Reunir em Array)

$push é um acumulador que anexa o resultado da expressão de cada documento a um array durante $group, na ordem de entrada (geralmente não garantida como estável). Ele reúne os detalhes do grupo em um único documento. Use $sort antes quando precisar de uma ordem estável.

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

📝 Sintaxe

{ $group: { _id: <key>, items: { $push: "$field" } } }

Retorno:Matriz de todos os resultados de expressão no grupo

▶ Exemplo

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

// $push: reúne itens por cliente
db.orders.aggregate([
  { $group: { _id: '$cust_id', items: { $push: '$item' } } }
])

Saída:

{ "_id": "A123", "items": ["Pen", "Book"] }

📌 Notas

📚 Tutoriais Relacionados

❓ Perguntas Frequentes

QA ordem da saída de $push é estável?
ANão estritamente; use $sort antes no pipeline quando a ordem importar.
QQual é a diferença entre $push e $addToSet?
A$push mantém duplicatas; $addToSet deduplica.
QComo coleto apenas os primeiros elementos?
ASiga $push com $slice, ou use $sort e $limit antes de $group.
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%