mongodb时间差

mongodb时间差,mongodb,datetime,pymongo,Mongodb,Datetime,Pymongo,如何筛选日期时间过去小于60分钟的数据库条目 我在mongodb中尝试了一些日期操作,其中有两个字段timestamp和marketstartime,在我的所有文档中都是date类型: {“$subtract”:[“$timestamp”,“$marketstartime”]} 但对于该操作,它总是返回null。为什么? 数据库中我的时间戳和marketstartime条目为日期类型,如下所示,这应该是正确的: 2017-12-23 12:00:00.000Z 我试图解决的实际问题是:如何获取过

如何筛选日期时间过去小于60分钟的数据库条目

我在mongodb中尝试了一些日期操作,其中有两个字段timestamp和marketstartime,在我的所有文档中都是date类型:

{“$subtract”:[“$timestamp”,“$marketstartime”]}

但对于该操作,它总是返回null。为什么?

数据库中我的时间戳和marketstartime条目为日期类型,如下所示,这应该是正确的:
2017-12-23 12:00:00.000Z


我试图解决的实际问题是:如何获取过去时间戳小于60分钟的所有条目?

可以为时间戳小于60分钟的文档组合查询

from datetime import datetime, timedelta

query = {
    '$timestamp': {
        '$lt': datetime.now() + timedelta(minutes=-60)
    }
}

cursor = db.collection.find(query)

可能重复的否,它不是重复的。请仔细阅读这个问题。谢斯沃特收回了。对不起,我不知道这是两个日期字段之间的时差。尝试从集合和完整查询中添加示例文档$减法应该以毫秒为单位,我想这就是你要找的复制品。无论是在mongo shell还是pymongo应用程序中,您都需要使用now-x的编程方式。聚合([{$project:{d1:{$subtract:[“$date1”,“$date2”]}}])您能添加对您不起作用的查询吗?