在 MongoDB 中,批量更新数据的常用方法是使用 updateMany
方法。该方法可以一次性更新满足指定条件的多个文档。
语法如下:
db.collection.updateMany(
<filter>,
<update>,
{
upsert: <boolean>,
writeConcern: <document>
}
)
其中,collection
是集合名称,filter
是一个查询条件,用于指定要更新的文档,update
是要更新的操作,upsert
是一个可选参数,如果设置为 true,则表示如果找不到满足条件的文档时,将会插入一条新文档。
下面是一个示例:
假设有一个名为 users
的集合,其中包含了一些用户文档,我们想要将所有年龄大于 30 的用户的状态设置为“已审核”。
db.users.updateMany(
{ age: { $gt: 30 } },
{ $set: { status: "已审核" } }
)
上述示例中,$gt
表示大于的意思,$set
是更新操作符,用于设置文档的 status
字段为“已审核”。
请注意,updateMany
方法会将满足条件的所有文档都进行更新。如果只想更新第一条满足条件的文档,可以使用 updateOne
方法。