【问题标题】:Query data stored in MongoDB by date & time按日期和时间查询存储在 MongoDB 中的数据
【发布时间】:2016-11-11 18:47:47
【问题描述】:

我想计算一段时间后存储在 MongoDB 中的对象数量。日期以下列格式存储在 MongoDB 中。

 "clickTime" : ISODate("2016-07-09T07:17:29.932Z")

我编写了以下代码来计算对象,但它给了我_count = 0,而它应该给我_count = 1。我在 Django 中这样做

def Count(request):
    time_from = datetime.time(0, 0, 0)

    ## today's count
    d1 = datetime.date.today()
    start1 = datetime.datetime.combine(d1,time_from)
    end1 = datetime.datetime.now()
    count1 = utils.Processor1(collect,start1,end1)

这是我的 utils 文件

 def Processor1(collect,start,end):
   _count = collect.find({"clickTime":{"$gte":start,"$lte":end}}).count()
   return _count

【问题讨论】:

    标签: python mongodb datetime mongodb-query pymongo


    【解决方案1】:

    根据您的问题,我不太确定您的 startend 变量是什么类型,但在将它们设置为 datetime 实例时尝试如下:

    start = datetime.datetime(2016, 7, 9, 0, 0, 0, 0)
    end = datetime.datetime(2016, 7, 9, 12, 21, 25, 366)
    

    【讨论】:

    • 我已经编辑了这个问题以便更好地理解。
    • 我刚刚设置了一个测试数据库,其中包含一些示例文档,其日期和时间与您的日期和时间相似,并成功查询它。您能否在 Processor1 函数中尝试 collect.find({}).count() 并检查它是否返回大于 0 的值,以检查您是否定位正确的集合?
    猜你喜欢
    • 2022-10-31
    • 2015-01-01
    • 2019-04-09
    • 2015-04-13
    • 2021-09-12
    • 2018-05-20
    • 1970-01-01
    • 2017-10-10
    相关资源
    最近更新 更多