【发布时间】:2019-12-20 02:21:06
【问题描述】:
我有一个 python 字典 结果= {'04BB30FC-5476-11DD-A31F-17FB9CFF4B22': [{'7219': '0.49954929481682875'}, {'1416': '0.48741579334133667'}, {'4531': '0.46331}4624'
key = 04BB30FC-5476-11DD-A31F-17FB9CFF4B22 和 [{'7219': '0.49954929481682875'}, {'1416': '0.48741579334133667'}] 是键值。
我在 mongoDB 中有一个具有相同键和不同键值的文档。
collection = db["DOCUMENT"]
DOCUMENT={ "_id" : ObjectId("5d5270c4464cc8210eb5f683"), "ID" : "04BB30FC-5476-11DD-A31F-17FB9CFF4B22" : [ { "7173" : "0.4076433655407347" }, { "526" : " 0.3878485824518719" }]
我想做一个检查,如果在文档中找到结果中的 ID,则必须更新它,否则 upsert=T。
for key in RESULT.keys():
print(key)
collection.update_one({"ID": key}, {"$set": RESULT}, upsert = True)
此代码仅插入新数据,无法更新,但追加导致重复。请帮助。
【问题讨论】:
标签: pymongo