📅  最后修改于: 2023-12-03 15:34:42.669000             🧑  作者: Mango
replaceone
是一个MongoDB Python驱动中的方法,用于更新集合中与指定过滤器匹配的单个文档。它可以将原始文档更新为新文档,并返回有关更新的详细信息。\
collection.replace_one(filter, replacement, upsert=False)
filter
:字典类型,用于匹配要更新的文档。replacement
:字典类型,包含要用于替换匹配文档的新数据。upsert
:布尔类型,如果为True,则在未找到匹配文档时将创建一个新文档。replace_one
方法返回一个UpdateResult
对象,其中包含以下属性:
acknowledged
:布尔类型,指示该操作是否已被MongoDB确认。matched_count
:整数类型,指示匹配的文档数。modified_count
:整数类型,指示受更新命令影响的文档数(之前与之匹配,之后没有与之匹配的文档不计入此数)。upserted_id
:用于标识上一次替换操作中插入的文档的_id。from pymongo import MongoClient
client = MongoClient('mongodb://localhost:27017/')
db = client['mydb']
collection = db['mycollection']
# 匹配并更新文档
filter = { 'name': 'Tom' }
replacement = { 'name': 'Tom Update', 'age': 28 }
result = collection.replace_one(filter, replacement)
print('匹配的文档数:', result.matched_count)
print('受影响的文档数:', result.modified_count)