【问题标题】:MongoDB --Aggregate the record count based on last 30 daysMongoDB -- 根据过去 30 天聚合记录数
【发布时间】:2016-07-24 15:50:49
【问题描述】:

您好,我正在尝试获取过去 30 天记录的汇总计数。

为了实现这一点,我在 Mongo 聚合管道中使用了以下 $match 条件

$match
{
"stageStartDate":{$gt: [new Date(ISODate().getTime() - 1000*60*60*24*30)]}
}

执行错误:ISODate() 处的日期格式无效

请帮我解决这个问题。我无法使用 Javascript,因为我在 Jaspersoft 报告中直接调用此查询。

【问题讨论】:

    标签: mongodb match


    【解决方案1】:

    这应该可以,只需根据毫秒差创建一个新的日期对象

    db.collection.aggregate([{$match: {stageStartDate: {$gt: new Date(new Date(ISODate().getTime() - 1000*60*60*24*30))}}}]);
    

    【讨论】:

    • 您好,谢谢您的回答。我在尝试这种方法后得到的异常下方发布。如果您能帮助我解决这个问题,我将不胜感激
    猜你喜欢
    • 2017-07-06
    • 1970-01-01
    • 2020-11-09
    • 1970-01-01
    • 1970-01-01
    • 2013-12-29
    • 1970-01-01
    • 2020-01-20
    • 2011-01-03
    相关资源
    最近更新 更多