我是MongoDB的新手,所以请帮我解答我的问题。 我希望将名为match\u date的列中的所有MongoDB字符串类型日期数据转换为ISODATE,并将它们粘贴到同一列中(我希望在开始时将其上载到另一列,并在迭代完成后重命名它)
但我想确定新列的类型是ISODATE
目前,字符串格式为 “2019年3月31日下午7:00”
我发现很难弄清楚它如何遍历整个集合并进行转换和完成此任务
非常感谢你的回答
集合名称:instats\u tournames\u matches\u transition 列名:匹配日期
我尝试在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()
如果您当前的数据都是您描述的
3/31/2019 7:00:00 PM
形式,那么您可以使用前面提到的strptime()
来解析它我对PyMongo和MongoDB不是很熟悉,但我猜您希望的是循环浏览您的集合,并用上面的格式更新您的文档
大概是这样的(我还没有测试过)
但你的里程数可能会有所不同
相关问题 更多 >
编程相关推荐