2017-07-19 64 views

回答

1
db.mytable.find(
    { 
     "event": { 
      $gt: new Date(new Date().getTime() - (10 * 60 * 1000)) 
     } 
    }) 

这个查询就会发现,有一个"event"性质与过去10分钟内的值的所有文档。不带参数的new Date()返回表示“现在”的Date。我们从毫秒中提取数字历元时间并减去10分钟。更具体地说,我们减去(10分钟* 60秒每分钟* 1000毫秒每秒),以便我们转换为正确的单位。然后我们使用该值构造另一个new Date(...),这是进入$gt(大于)过滤条件的那个值。

您提到需要“聚合”。如果是这样,那么同样的查询也可以在你需要的任何Aggregation Pipeline内使用。