As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.
$push
O operador $push de agregação retorna uma matriz de todos os valores de uma expressão especificada para cada grupo. Normalmente é usado no $group estágio para acumular valores em uma matriz.
Parâmetros
-
expression: a expressão a ser avaliada para cada documento no grupo.
Exemplo (MongoDB Shell)
O exemplo a seguir demonstra o uso do $push operador para coletar todos os nomes de produtos para cada categoria.
Crie documentos de amostra
db.sales.insertMany([ { _id: 1, category: "Electronics", product: "Laptop", amount: 1200 }, { _id: 2, category: "Electronics", product: "Mouse", amount: 25 }, { _id: 3, category: "Furniture", product: "Desk", amount: 350 }, { _id: 4, category: "Furniture", product: "Chair", amount: 150 }, { _id: 5, category: "Electronics", product: "Keyboard", amount: 75 } ]);
Exemplo de consulta
db.sales.aggregate([ { $group: { _id: "$category", products: { $push: "$product" } } } ]);
Saída
[
{ _id: 'Furniture', products: [ 'Desk', 'Chair' ] },
{ _id: 'Electronics', products: [ 'Laptop', 'Mouse', 'Keyboard' ] }
]
Exemplos de código
Para ver um exemplo de código para usar o operador de $push agregação, escolha a guia do idioma que você deseja usar: