Ejemplo $group
$group: (Contar los documentos agrupados por activo)
Contar los artículos agrupados por $activo
Orden
Salida
db.articulo.aggregate([ {"$group": {"_id": {"_activo" : "$activo"}, "total": {"$sum": 1}}} ])
{ "_id" : { "_activo" : "si" }, "total" : 1790 } { "_id" : { "_activo" : "no" }, "total" : 2 }
aggregateFromDocument()/Cuenta el numero de documentos agrupado por activo
Lo agrupamos por activo
Contar los documentos y colocarlos en la variable cantidad
List<Document> documentList = Arrays.asList(
new Document("$group",
new Document("_id", "$" + "activo").append("cantidad", new Document("$sum", 1))));
List<JmoordbResult> list = articuloRepository.aggregateFromDocument(documentList);
if (list == null || list.isEmpty()) {
System.out.println("No hay articulos con esa condicion");
} else {
list.forEach((a) -> {
System.out.println("_id " + a.get("_id") + " Cantidad: " + a.get("cantidad"));
});
}

Last updated
Was this helpful?