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á.
$ count (acumulador)
Novo na versão 8.0.1.
Use o $count acumulador dentro de um $group estágio para retornar o número de documentos em cada grupo. Ele aceita um objeto vazio {} como argumento.
Isso é diferente do estágio do $count pipeline, que é um estágio independente que conta todos os documentos que passam pelo pipeline. Em vez disso, o $count acumulador conta os documentos dentro de cada grupo produzido por$group.
Sintaxe
{ $count: {} }
Parâmetros
-
O
$countacumulador não aceita argumentos. Ele aceita um objeto vazio{}e retorna a contagem de documentos em cada grupo.
Exemplo (MongoDB Shell)
O exemplo a seguir mostra como usar o $count acumulador para contar o número de produtos em cada categoria.
Crie documentos de amostra
db.products.insertMany([ { name: "Widget", category: "A" }, { name: "Gadget", category: "A" }, { name: "Doohickey", category: "B" }, { name: "Thingamajig", category: "B" }, { name: "Whatsit", category: "B" } ])
Exemplo de consulta
db.products.aggregate([ { $group: { _id: "$category", count: { $count: {} } } } ])
Saída
[
{ "_id": "A", "count": 2 },
{ "_id": "B", "count": 3 }
]
Exemplos de código
Para ver um exemplo de código para usar o $count acumulador, escolha a guia do idioma que você deseja usar: