小编Akh*_*ala的帖子

MongoDB 聚合函数,用于返回特定日期范围内的按日计数

我还需要每天获取特定日期范围内的个人用户数量。假设一个月内(1 日 - 30 日)总共有 100 个用户,我需要像这样获得计数

{
    1st - 2 users
    2nd - 10 users
}

MessagesSchema.statics.totalMessagesGraph = (id, startDate, endDate, platform) => {
    return Messages.aggregate([
        {
            $match: {
                id: id,
                platform: platform,
                timestamp: {
                    $gte: new Date(startDate),
                    $lte: new Date(endDate)
                }
            }
        }    
    ])
}
Run Code Online (Sandbox Code Playgroud)

为了获得想要的结果,这里应该做什么?

预期结果:

对于该特定日期范围,每天的计数。

{
    date1 - 20,
    date2 - 22,
    date3 - 24,
    ...
    date30 - 12 
}
Run Code Online (Sandbox Code Playgroud)

预期输出应如上所示。之后应该进行什么查询$match。如果可能,请获取样本数据集并提供输出。

mongoose node.js aggregation-framework

1
推荐指数
1
解决办法
1504
查看次数

标签 统计

aggregation-framework ×1

mongoose ×1

node.js ×1