配列内の要素を更新する場合は、位置演算子:$ 更新クエリにフィールドを追加します。
これは、条件に基づいて更新する配列内の要素を識別します。
埋め込み配列をvolume
で更新する例 フィールドが100に等しく、200に設定されている:
db.getCollection("collection").findOneAndUpdate({
id: 1,
"data.volume": 100
},
{ $set: { "data.$.volume": 200 }
});