1、更新集合
可以通过使用更新记录或在MongoDB中调用的文档
update_one()
方法。
update_one()
方法的第一个参数是一个查询对象,用于定义要更新的文档。
注意:如果查询找到多个记录,则仅更新第一个记录。
第二个参数是定义文档新值的对象。
例如:
将地址从“ Valley 345”更改为“ Canyon 123”:
import pymongo myclient = pymongo.MongoClient("mongodb://localhost:27017/") mydb = myclient["mydatabase"] mycol = mydb["customers"] myquery = { "address": "Valley 345" } newvalues = { "$set": { "address": "Canyon 123" } } mycol.update_one(myquery, newvalues) #print "customers" after the update: for x in mycol.find(): print(x)
2、更新多个
要更新符合查询条件的所有文档,请使用update_many()
方法。
例如:
更新address以字母“S”开头的所有文档:
import pymongo myclient = pymongo.MongoClient("mongodb://localhost: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, "documents updated.")