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

mongoシェルを介したmongoDBのネストされた配列の更新

    MongoDBの現在の制限の1つに直接ぶつかっています。問題は、エンジンが複数の位置演算子をサポートしていないことです。ネストされた配列を更新するための位置`$`演算子の複数の使用を参照してください

    これにはオープンチケットがあります:https://jira.mongodb.org/browse/SERVER-831(そこにも記載されています)

    データモデルを変更する方法については、次の記事も読むことができます:mongodbのネストされた配列の更新

    可能であれば、次のことができます。

    db.collection.update({_id:2,"event_type.name":'MT' ,"event_type.language.name":'English'},{$set:{"event_type.0.language.$.count":<number>}})
    
    db.collection.update({_id:2,"event_type.name":'MT' ,"event_type.language.name":'English'},{$set:{"event_type.$.language.0.count":<number>}})
    

    しかし、あなたはできません:

    db.collection.update({_id:2,"event_type.name":'MT' ,"event_type.language.name":'English'},{$set:{"event_type.$.language.$.count":<number>}})
    


    1. insertManyは重複エラーを処理します

    2. mongodbでエクスプレスとパスポートを使用したnodejsのシンプルなログインページ

    3. このgeventプログラムでredisへの接続が1つだけ行われたのはなぜですか?

    4. 500MBのRedisdump.rdbファイルが約5.0GBのメモリを必要とするのはなぜですか?