我有一个包含各种文档的MongoDB集合。我的Python脚本每隔一秒钟就会从API检索一些数据,我想使用文档的更新版本来更新集合的每个文档,因此必须更新整个集合。
result = db.main_tst.insert_one(dic)
这是我插入数据的方式。现在,我应该更新它,而不是插入dic
。我如何在MongoDB中使用Python做到这一点?我知道有一种update_many()
方法,但是我只找到了如何更新特定文档而不是整个文档集的方法。
答案 0 :(得分:0)
应该很简单:
让我们假设如果您在下面考虑,它将字段名='N / A'的所有匹配文档更新为“无名称”:
filterQuery = { 'name': 'N/A'}
updateQuery = { "$set": { "name": "No name" } }
result = mycol.update_many(filterQuery, updateQuery);
对于需要更新集合中所有文档的需求,您要做的就是传递空{}
代替过滤器,这意味着它应该更新所有文档:
filterQuery = {}
updateQuery = { "$set": { "name": "No name" } }
result = mycol.update_many(filterQuery, updateQuery)