Para agentes de IA: um índice de documentação está disponível em https://www.mongodb.com/pt-br/docs/llms.txt — as versões de markdown de todas as páginas estão disponíveis anexando .md a qualquer caminho de URL.
See how MongoDB 9.0 delivers up to 2x higher throughput.
MongoDB Branding Shape
Register now >
Menu Docs

$concatArrays (operador acumulador )

$concatArrays

Retorna uma única array que concatena os valores de array de um campo em um grupo de documentos.

O acumulador $concatArrays está disponível nos seguintes estágios:

Observação

Desambiguação

Esta página descreve $concatArrays quando usado como acumulador. Os acumuladores retornam um único valor agregado em um grupo de documentos de entrada.

Você também pode usar $concatArrays nestes outros contextos:

{ $concatArrays: [ <expression1>, <expression2>, ... ] }

Os argumentos que são null ou que resultam em null são incluídos nos resultados. Os argumentos que se referem a um campo ausente não são incluídos nos resultados.

O exemplo a seguir usa a coleção movies do conjunto de dados de amostra sample_mflix. Para obter detalhes sobre como carregar esse conjunto de dados em sua implantação, consulte Carregar o conjunto de dados de amostra.

O exemplo usa $concatArrays para concatenar as arrays genres de filmes agrupados por ano de lançamento:

db.movies.aggregate( [
{
$match: { year: { $in: [1928, 1929] } }
},
{
$group: {
_id: "$year",
combinedGenres: { $concatArrays: "$genres" }
}
},
{ $sort: { _id: 1 } }
] )

A operação usa $match para selecionar filmes lançados em 1928 e 1929 e, em seguida, agrupa os resultados por year. O campo combinedGenres concatena as arrays genres de todos os filmes em cada grupo de anos.

$concatArrays suporta apenas arrays e expressões que resolvem para uma array.