ANNOUNCEMENT: Voyage AI joins MongoDB to power more accurate and trustworthy AI applications on Atlas.
Learn more
Menu Docs

$concatArrays (agregação)

$concatArrays

Novo na versão 3.2.

Concatena arrays para retornar a array concatenada.

$concatArrays tem a seguinte sintaxe:

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

As expressões do <array> podem ser qualquer expressão válida desde que resolvam para uma array. Para mais informações sobre expressões, consulte Expressões.

Caso algum argumento seja resolvido com um valor null ou caso algum fragmento seja destinado a um campo ausente, $concatArrays retornará null.

Exemplo
Resultados
{ $concatArrays: [
[ "hello", " "], [ "world" ]
] }
[ "hello", " ", "world" ]
{ $concatArrays: [
[ "hello", " "],
[ [ "world" ], "again"]
] }
[ "hello", " ", [ "world" ], "again" ]

Crie uma coleção denominada warehouses com os seguintes documentos:

db.warehouses.insertMany( [
{ _id : 1, instock: [ "chocolate" ], ordered: [ "butter", "apples" ] },
{ _id : 2, instock: [ "apples", "pudding", "pie" ] },
{ _id : 3, instock: [ "pears", "pecans" ], ordered: [ "cherries" ] },
{ _id : 4, instock: [ "ice cream" ], ordered: [ ] }
] )

O exemplo a seguir concatena as arrays instock e ordered :

db.warehouses.aggregate( [
{ $project: { items: { $concatArrays: [ "$instock", "$ordered" ] } } }
] )
{ _id : 1, items : [ "chocolate", "butter", "apples" ] }
{ _id : 2, items : null }
{ _id : 3, items : [ "pears", "pecans", "cherries" ] }
{ _id : 4, items : [ "ice cream" ] }

Dica

Veja também: