以下是参考资料:
查找单个文档并更新它,返回原始文档或更新后的文档。
update_one 方法更新与过滤器匹配的单个文档。
在我看来,他们都首先查询所选文档,然后更新它。
我想知道是否存在某种优化差异。唯一的另一个区别是返回值,这让我想知道为什么人们甚至会使用它update_one()。
小智 8
这两个操作之间有一些变化:
find_one_and_update默认情况下 :meth:
find_one_and_update返回应用更新之前文档的原始版本。要返回文档的更新版本,请使用return_document选项。您可以限制使用投影选项返回的字段。
如果文档尚不存在,可使用upsert选项来创建该文档。
如果多个文档匹配过滤器,则可以应用排序。
因此,此方法执行一种find允许您对数据库中的记录进行排序和过滤的操作。
update_one使用此方法,您无法对记录进行排序,它只是执行find操作并用for循环更新每个找到的元素。
所以最后我认为update_one操作比操作更快find_one_and_update。
| 归档时间: |
|
| 查看次数: |
2413 次 |
| 最近记录: |