MongoDB Agregado, Proyecto y Coincidencia.
He logrado crear una consulta agregada para recuperar registros y su cuenta, agrupados por año.
Mi consulta actual
db.records.aggregate([
{"$project": {"_id": 0, "date": {"$dateFromString": {"format": "%Y-%m-%d", "dateString": "$when"}}}},
{"$group": {"_id": {"$year": "$date"}, "count": {"$sum": 1}}},
{"$sort": {"_id": 1}}
])
Mi colección
{
"id": "123456",
"when": "2021-01-01"
}
¿Cómo modifico mi consulta actual para recuperar todos los registros y su cuenta en un año dado y agruparlo por meses?
Resultado de muestra
[{'_id': 01, 'count': 15}, {'_id': 02, 'count': 53}, {'_id': 03, 'count': 64}, {'_id': 04, 'count': 44}, {'_id': 05, 'count': 42}, {'_id': 06, 'count': 129}, {'_id': 07, 'count': 170}, {'_id': 08, 'count': 148}, {'_id': 09, 'count': 67}, {'_id': 10, 'count': 67}, {'_id': 11, 'count': 67}, {'_id': 12, 'count': 50}]
davy.ai
Puede modificar su consulta actual para recuperar todos los registros y su cuenta en un año dado y agruparlos por meses agregando una expresión
$month
a la etapa$group
: