mongodb基于python函数更新所有键的值
我用的是pymongo 我有一个mongo db,其中所有文档都有 “时间戳”:“2011年10月25日” 因此,所有文档中的键mongodb基于python函数更新所有键的值,python,datetime,mongodb,pymongo,Python,Datetime,Mongodb,Pymongo,我用的是pymongo 我有一个mongo db,其中所有文档都有 “时间戳”:“2011年10月25日” 因此,所有文档中的键timestamp中都存储了一个字符串 我想在这些字符串日期上应用下面提到的python函数,并将它们转换为datetime对象。在mongodb中最好的方法是什么 import datetime def make_date(str_date): return datetime.datetime.strptime(str_date, "%d-%b-%Y")
timestamp
中都存储了一个字符串
我想在这些字符串日期上应用下面提到的python函数,并将它们转换为datetime对象。在mongodb中最好的方法是什么
import datetime
def make_date(str_date):
return datetime.datetime.strptime(str_date, "%d-%b-%Y")
为满足您的需要:
import bson
for document in list(database.collection.find({ })):
converted_date = make_date(document['timestamp'])
database.collection.update(
{ "_id": bson.objectid.ObjectId(document['_id']) },
{ "converted": converted_date }
)
我使用ObjectId作为查询,以确保我更新了刚得到的文档。我这样做是因为我不确定时间戳冲突是否会导致不必要的后果。为了满足您的需要:
import bson
for document in list(database.collection.find({ })):
converted_date = make_date(document['timestamp'])
database.collection.update(
{ "_id": bson.objectid.ObjectId(document['_id']) },
{ "converted": converted_date }
)
我使用ObjectId作为查询,以确保我更新了刚得到的文档。我这样做是因为我不确定时间戳冲突是否会导致不必要的后果。我需要保存mongodb中的更改,我也需要保存mongodb中的更改