AFAIK,两个操作都可以更新多个文档。如果是这样,两者之间有什么区别?
答案 0 :(得分:2)
只需在此处引用API docs
发送多个insertOne,updateOne,updateMany,replaceOne, deleteOne和/或deleteOne对MongoDB服务器的许多操作 命令。这比发送多个独立操作快 (例如)如果您使用create()),因为bulkWrite()只有一个 往返MongoDB。
猫鼬将对您提供的所有操作进行强制转换。
此函数不会触发任何中间件,也不会触发save()或 update()。如果您需要为每个文档触发save()中间件 改用create()。
与update()相同,除了MongoDB 将更新所有匹配的文档 过滤器(而不是第一个) 多重选项。
注意updateMany不会触发更新中间件。使用pre('updateMany') 然后发布('updateMany')。
(重点是我的)
要查看使用示例,请查看函数的相应文档中提供的示例。