【发布时间】:2019-09-15 02:49:29
【问题描述】:
我是 MongoDB 新手,所以请帮我解决我的问题。 我希望将名为 match_date 的列中的所有 MongoDB 字符串类型日期数据转换为 ISODATE 并将它们粘贴到同一列中(我希望在开始时将其上传到不同的列并在迭代完成后重命名它。)
但我想确保新列的类型为 ISODATE。
目前,字符串格式为 “2019 年 3 月 31 日晚上 7:00:00”
我发现很难弄清楚它如何遍历整个集合并进行此转换并完成此任务。
非常感谢您的回答。
收藏名称:instats_tournament_matches_transition 列名:match_date
我尝试在 MongoDB shell 上执行此操作,但这不起作用,因为我必须将其作为计划任务运行。
我希望结果看起来像 2019-04-25T15:31:35.000Z 并在 Python 中执行此任务
import datetime
import pymongo
import dateutil.parser
def getDatetimeFromISO(s):
d = dateutil.parser.parse(s)
return d
conn = pymongo.MongoClient()
db = conn.sampleDB
collection = db.test
post = {
"user" : "test1",
"date" : getDatetimeFromISO("2016-02-10T21:56:33.000Z")
}
collection.insert_one(post)
conn.close()
【问题讨论】:
-
请发布您当前的代码以及您遇到的问题。首先,您可以查看datetime.strptime()。
-
我添加了我正在处理的代码。
标签: python mongodb pymongo python-dateutil