使用updateMany()
方法可以更新匹配某个条件的多个文档。下面是updateMany()
方法的使用方式:
db.collection.updateMany(filter, update, options)
参数说明:
filter
:更新文档的筛选条件,类似于find()
方法的查询条件。update
:要更新的字段和值。options
:可选参数,可以用于设置更新操作的一些选项,例如排序、限制更新数量等。示例:
假设我们有一个名为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
}
以上代码将Bob
的年龄从30岁加到了35岁,Charlie
的年龄从35岁加到了40岁。