$concatArrays (Concatenar Arrays)

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

$concatArrays (Concatenar Arrays)

$concatArrays mescla vários arrays em um só sem deduplicação. Como expressão de array, é comum em $project e $addFields; desde o MongoDB 8.1, ele também pode atuar como acumulador de $group, concatenando campos de array entre os documentos do grupo. Ao contrário de $setUnion, duplicatas são mantidas.

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

📝 Sintaxe

{ $concatArrays: [ <array1>, <array2>, ... ] }

Retorno:Nova matriz de todas as matrizes de entrada concatenadas (duplicatas mantidas)

▶ Exemplo

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

// $concatArrays: adiciona uma tag em $project
db.products.aggregate([
  { $project: { allTags: { $concatArrays: ['$tags', ['hot']] } } }
])

Saída:

{ "_id": 1, "allTags": ["a", "b", "hot"] }

📌 Notas

📚 Tutoriais Relacionados

❓ Perguntas Frequentes

Q$concatArrays deduplica?
ANão; use $setUnion quando precisar de deduplicação.
QE se uma entrada não for um array?
AGera erro; todas as entradas precisam ser arrays — verifique antes com $isArray.
QEle pode ser usado como acumulador de $group?
ADesde o MongoDB 8.1, sim — concatenando campos de array entre os documentos do grupo.
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%