検索

ホームページ  >  に質問  >  本文

问下 MongoDB 中有没有批量查找文档的同时然后更新文档指定字段值的功能?

现在有一个需求是使用 MongoDB 查找文档的同时将文档中的字段给更新掉,也就是用一个命令完成查找以及更新(原子性)。
Mongo 中对于单个文档是有类似的方法的,比如 FindAndModify 查找并更新的操作,并且是原子性的,但是只作用于单个文档。
问下有没有可以实现查找多个文档并且相应的更新文档的字段的操作。

为情所困为情所困2754日前640

全員に返信(2)返信します

  • phpcn_u1582

    phpcn_u15822017-05-02 09:27:48

    Mongoose の更新はバッチで操作できます。update の multi 属性は true に設定されています。http://www.nonb.cn/blog/nodej...

    返事
    0
  • 漂亮男人

    漂亮男人2017-05-02 09:27:48

    1. MongoDB の原子性:

    1. FindAnyModify は 1 つのドキュメントに対してのみアトミックです。

    2. 複数のドキュメントに対する操作の場合、1 つのドキュメントに対する各操作はアトミックですが、操作中に他のドキュメントからの操作が行われる可能性があります。

    しかし、ほとんどのシナリオでは、単一のドキュメントの原子性はすでに要件を満たしています。

    複数のドキュメントの操作でアトミック性を実現する必要がある場合は、独自のコード/設計で実装する必要があります。

    2. 明示的なニーズに応じて、実際には update の multi オプションを使用するか、updateMany を直接使用できます。

    リーリー

    ご参考までに。

    MongoDB を愛してください!

    返事
    0
  • キャンセル返事