MongoDB の updateMany の使い方
updateMany() メソッドを使用することで、特定の条件と一致する複数のドキュメントを更新できます。updateMany() メソッドの使い方は次のとおりです。
db.collection.updateMany(filter, update, options)
パラメータの説明:
- ドキュメントの更新条件をフィルタします(find()メソッドのクエリの条件と似ています)。
- 更新するフィールドと値
- 更新操作に、並び替え、更新する件数の制限など、いくつかのオプションを適用できる選択肢の引数
仮にusersというコレクションがあり、以下のようなドキュメントがあるとします。
{
"_id" : 1,
"name" : "Alice",
"age" : 25
},
{
"_id" : 2,
"name" : "Bob",
"age" : 30
},
{
"_id" : 3,
"name" : "Charlie",
"age" : 35
}
30歳以上の人は年齢に5歳を加算します。
db.users.updateMany(
{ age: { $gte: 30 } }, // 筛选条件:年龄大于等于30
{ $inc: { age: 5 } } // 要更新的字段和值:年龄加5岁
)
上記コードを実行した後の users コレクションのドキュメントは以下のようになります:
{
"_id" : 1,
"name" : "Alice",
"age" : 25
},
{
"_id" : 2,
"name" : "Bob",
"age" : 35
},
{
"_id" : 3,
"name" : "Charlie",
"age" : 40
}
このコードはボブの年齢を 30 歳から 35 歳に、チャーリーの年齢を 35 歳から 40 歳に更新します。