问题:mongoose findOneAndUpdate 和 update 的区别

findOneAndUpdate 和 update 有什么区别?

两者都接受查询条件和更新文档。

解答

好吧,.update().findAndModify()的相应文档是.findOneAndUpdate()的根方法。

但主要区别有:

  • update():旨在对集合中与其查询条件匹配的“一个或多个”文档执行原子更新操作。它在响应中返回修改文档的数量。

  • findOneAndUpdate():目的是处理“奇异”文档上的更新语句,以及检索该“奇异”文档的内容。返回的状态取决于传递给操作的“新”选项的值。其中true返回“修改后的”文档。其中false在任何修改之前返回“原始”文档。后一种形式是默认选项。

简而言之。一种是“批量”修改,而不用担心结果中的文档内容。另一个是修改单个文档并在结果中返回文档内容。

这就是区别。

Logo

MongoDB社区为您提供最前沿的新闻资讯和知识内容

更多推荐