Python MongoDB 更新
更新集合
你可以使用 update_one()
方法更新记录,或者在 MongoDB 中称为文档。
update_one()
方法的第一个参数是一个查询对象,用于定义要更新的文档。
注意:如果查询找到多个记录,则只更新第一个出现的记录。
第二个参数是一个对象,用于定义文档的新值。
示例
将地址从 "Valley 345" 更改为 "Canyon 123"
import pymongo
myclient = pymongo.MongoClient("mongodb://127.0.0.1:27017/")
mydb = myclient["mydatabase"]
mycol = mydb["customers"]
myquery = { "address": "Valley 345" }
newvalues = { "$set": { "address": "Canyon 123" } }
mycol.update_one(myquery, newvalues)
# 打印更新后的 "customers"
for x in mycol.find()
print(x)
运行示例 »
更新多个
要更新所有满足查询条件的文档,请使用 update_many()
方法。
示例
更新所有地址以字母 "S" 开头的文档
import pymongo
myclient = pymongo.MongoClient("mongodb://127.0.0.1:27017/")
mydb = myclient["mydatabase"]
mycol = mydb["customers"]
myquery = { "address": { "$regex": "^S" } }
newvalues = { "$set": { "name": "Minnie" } }
x = mycol.update_many(myquery, newvalues)
print(x.modified_count, "个文档已更新。")
运行示例 »