1

配列内のオブジェクトのフィールドの複数の更新を実行しようとしています。構造は次のようになります。

{
rs:[
  {uid:"123", ufc:"bla"},
  {uid:"123", ufc:"foo"}, 
  //...
  ]
}

何らかの理由で、最初のフィールドのみが更新されます。これを解決するには使用する必要があると読みましmulti:trueたが、それでも同じです。

私は試した:

db.mycollection.update({"rs.uid": "123"},
                  {$set: {"rs.$.ufc":"test"}},
                  false, true
                  )

と:

db.mycollection.update({"rs.uid": "123"},
                  {$set: {"rs.$.ufc":"test"}},
                  {multi: true}
                  )

おそらく入れ子構造に関連していますか?ありがとう。

4

1 に答える 1