【问题标题】:mongodb date comparison between ISO string and datetimeISO字符串和日期时间之间的mongodb日期比较
【发布时间】:2015-02-17 15:48:18
【问题描述】:

我有一个 MongoDB 集合,其中日期属性以以下格式存储

{'date': "2014-05-28T13:02:46"}

我在 Python 服务器中收到来自用户的查询,格式为“2014-05-28”,我必须将其与“日期”进行比较。我在 Pymongo 中编写了以下查询,但它失败了。

 signup_date = datetime.date(2014,5,28)
 signed_up_users = usercollection.find({'customer_id':'abc','date' :{"$gte":signup_date}})

我认为这是日期转换问题。但是,我无法修改集合“日期”,它是一个字符串。所以,我相信我必须解析它,但在 PyMongo 中找不到解析它的方法。

【问题讨论】:

  • 这不是日期转换问题,只是您可能应该使用日期类型来存储日期。你的预期结果是什么? 2014-05-28 应该在同一天下午 1:02 之前还是之后来?
  • 不幸的是,我无法控制数据的存储方式。我只从中读过。基本上日期 2014-05-28 用作比较的下限。

标签: python mongodb date pymongo isodate


【解决方案1】:

我能够通过以下方式解决此问题

signup_date_iso = datetime.date(2014,5,28).isoformat()

这将转换为 ISO 格式的日期字符串,我可以使用它与存储在数据库中的日期字符串进行比较。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2020-06-10
    • 2020-12-16
    • 2015-07-20
    • 1970-01-01
    • 1970-01-01
    • 2019-07-25
    • 2012-12-20
    • 1970-01-01
    相关资源
    最近更新 更多