MongoDB 按一天中最接近特定小时/分钟的日期聚合文档



我的 mongodb 中有文档,这个文档有event字段 - 这个 fild 类型是date.年、月、日,并不重要,只表示白天的时间。我希望 cron 脚本每天从 mongodb 聚合具有event(键入日期(字段的文档,使其最接近 10 分钟(到脚本调用日期(。如何以正确的方式实施它?

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

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

你提到需要"聚合"。 如果是这样,则还可以在所需的任何聚合管道中使用同一查询。

最新更新