【问题标题】:Pymongo transfer unicode to datetime in find queryPymongo 在查找查询中将 unicode 传输到日期时间
【发布时间】:2017-05-23 10:06:39
【问题描述】:

我正在尝试查找添加了 2 个日期的数据。我的查询如下:

from datetime import datetime, timedelta

dt = datetime.now() - timedelta(days=10)
for data in db.data1.find({(datetime.strptime("d", '%Y-%m-%dT%H:%M:%S.%f')): {"$gt" : dt, "$lt" : datetime.now()}}):

但我得到 ValueError: time data 'd' does not match format '%Y-%m-%dT%H:%M:%S.%f'

而'd'值如下:

 "d" : "2017-01-08T12:25:41.570746",

我的查询没有出错。

我知道这是重复的,但我已经尝试了所有可行的方法!

【问题讨论】:

    标签: mongodb datetime pymongo


    【解决方案1】:

    在 Python 中,这是一个字符串:

    "d"
    

    你想要的是一个变量的引用:

    d
    

    像这样:

    for data in db.data1.find({(datetime.strptime(d, '%Y-%m-%dT%H:%M:%S.%f')): {"$gt" : dt, "$lt" : datetime.now()}}):
    

    【讨论】:

    • @Jesse 'd' 在 mongodb 的 data1 集合中存在。所以我想查询mongodb。我只是在这里指定了 ii 的“d”值或它的外观。
    猜你喜欢
    • 2016-09-25
    • 2012-08-11
    • 2021-07-20
    • 1970-01-01
    • 2015-02-08
    • 2017-09-10
    • 2014-12-09
    相关资源
    最近更新 更多