sql >> データベース >  >> NoSQL >> MongoDB

MongoDB:1つのフィールドのすべてのドキュメントを更新します

    バージョンに関係なく、たとえば、<update> は:

    {  $set: { lastLookedAt: Date.now() / 1000 }  }
    

    ただし、MongoDBのバージョンによって、クエリの外観は異なります。バージョンに関係なく、重要なのは空の条件{} どのドキュメントにも一致します 。 Mongoシェル、または任意のMongoDBクライアントの場合:

    $ version> =3.2:

    db.foo.updateMany( {}, <update> )
    
    • {} 条件です(空の条件はどのドキュメントにも一致します)

    3.2> $ version> =2.2:

    db.foo.update( {}, <update>, { multi: true } )
    
    • {} 条件です(空の条件はどのドキュメントにも一致します)
    • {multi: true} 「複数のドキュメントを更新する」オプションです

    $ version <2.2:

    db.foo.update( {}, <update>, false, true )
    
    • {} 条件です(空の条件はどのドキュメントにも一致します)
    • false 「upsert」パラメータ用です
    • true 「multi」パラメータ用です(複数のレコードを更新します)


    1. 値がターゲットのソートされたセットに存在する最高スコアよりも大きいスコアを持つ場合のzaddの時間計算量

    2. エラー10068で失敗しました:無効な演算子:$ oid

    3. 配列をフィルタリングして関連コンテンツを入力するマングースクエリ

    4. ClusterControl1.5ドキュメント-新機能