Du kan uppnå detta genom att använda den aggregerade operationen. Det är $vecka aggregeringsoperation i mongodb.
Bestäm först startdatumet med vilket programmeringsspråk du än använder.
I följande pipeline-operation, räkna antalet dokument som matchar en vecka. Du kan göra det på alla fält/typ av aggregering du behöver.
pipeline = [
{
$match: {
timeStamp: {$gt: ISODate(startDate)},
}
},
{
$group: {
_id: {$week: '$timeStamp'},
documentCount: {$sum: 1}
}
}
];
db.mycollection.aggregate(pipeline)
För de två ovanstående dokumenten du angav blir resultatet
{ "_id" : 48, "documentCount" : 2 }
_id
ovan säger, 48:e veckan, och det finns två dokument.
Gå igenom länken $vecka att veta hur mongodb räknar veckonummer.