您需要将multi设置为true。包括选项multi-true以更新所有符合查询条件的文档。
首先让我们创建一个包含文档的集合-
> db.demo390.insertOne({"FirstName":"Chris"});
{
"acknowledged" : true,
"insertedId" : ObjectId("5e5d1f3a22064be7ab44e7fa")
}
> db.demo390.insertOne({"FirstName":"David"});
{
"acknowledged" : true,
"insertedId" : ObjectId("5e5d1f3e22064be7ab44e7fb")
}
> db.demo390.insertOne({"FirstName":"Bob"});
{
"acknowledged" : true,
"insertedId" : ObjectId("5e5d1f4122064be7ab44e7fc")
}
> db.demo390.insertOne({"FirstName":"Chris"});
{
"acknowledged" : true,
"insertedId" : ObjectId("5e5d1f4422064be7ab44e7fd")
}在find()方法的帮助下显示集合中的所有文档-
> db.demo390.find();
这将产生以下输出-
{ "_id" : ObjectId("5e5d1f3a22064be7ab44e7fa"), "FirstName" : "Chris" }
{ "_id" : ObjectId("5e5d1f3e22064be7ab44e7fb"), "FirstName" : "David" }
{ "_id" : ObjectId("5e5d1f4122064be7ab44e7fc"), "FirstName" : "Bob" }
{ "_id" : ObjectId("5e5d1f4422064be7ab44e7fd"), "FirstName" : "Chris" }以下是使用multi-true-更新值的查询
> db.demo390.update({FirstName:"Chris"},{$set:{"FirstName":"John"}},{multi:true});
WriteResult({ "nMatched" : 2, "nUpserted" : 0, "nModified" : 2 })在find()方法的帮助下显示集合中的所有文档-
> db.demo390.find();
这将产生以下输出-
{ "_id" : ObjectId("5e5d1f3a22064be7ab44e7fa"), "FirstName" : "John" }
{ "_id" : ObjectId("5e5d1f3e22064be7ab44e7fb"), "FirstName" : "David" }
{ "_id" : ObjectId("5e5d1f4122064be7ab44e7fc"), "FirstName" : "Bob" }
{ "_id" : ObjectId("5e5d1f4422064be7ab44e7fd"), "FirstName" : "John" }