在MongoDB中,是否有一种方法可以更新许多文档并获得在一次调用中被修改的文档?

问题描述

我使用的是Mongo Java驱动程序,但查看Mongo的文档,它看起来并不是特定于驱动程序的。

update(filter,update)可以更新多个文档,但返回只提供标志/计数的WriteResult。

findOneAndUpdate(filter,update)返回修改后的实际文档,但是一次只能更新一个文档。

有没有办法一次通话?如果没有,客户端将必须调用find(filter),然后依次调用update(filter,update)find(...),并使用一个与初始查找中获得的ID匹配的新过滤器(因为更新可能会更改在初始过滤器中。

有更好的方法吗?

解决方法

我不知道任何返回游标的写命令,这实际上就是您要的内容,也没有看到驱动程序源中的任何相关内容。