MongoDB中如何使用特定字符串更新字段的所有值

要更新所有值,请将update()与multi:true一起使用。  让我们创建一个包含文档的集合-

> db.demo720.insertOne({"SubjectName":"MySQL"});
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5eaae7ca43417811278f5883")
}
> db.demo720.insertOne({"SubjectName":"Java"});
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5eaae7ce43417811278f5884")
}
> db.demo720.insertOne({"SubjectName":"C"});
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5eaae7d143417811278f5885")
}
> db.demo720.insertOne({"SubjectName":"C++"});
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5eaae7d543417811278f5886")
}

在find()方法的帮助下显示集合中的所有文档-

> db.demo720.find();

这将产生以下输出-

{ "_id" : ObjectId("5eaae7ca43417811278f5883"), "SubjectName" : "MySQL" }
{ "_id" : ObjectId("5eaae7ce43417811278f5884"), "SubjectName" : "Java" }
{ "_id" : ObjectId("5eaae7d143417811278f5885"), "SubjectName" : "C" }
{ "_id" : ObjectId("5eaae7d543417811278f5886"), "SubjectName" : "C++" }

以下是更新字段“ SubjectName”的所有值的查询-

> db.demo720.update({},{$set:{SubjectName:"MongoDB"}},{multi:true});
WriteResult({ "nMatched" : 4, "nUpserted" : 0, "nModified" : 4 })

在find()方法的帮助下显示集合中的所有文档-

> db.demo720.find();

这将产生以下输出-

{ "_id" : ObjectId("5eaae7ca43417811278f5883"), "SubjectName" : "MongoDB" }
{ "_id" : ObjectId("5eaae7ce43417811278f5884"), "SubjectName" : "MongoDB" }
{ "_id" : ObjectId("5eaae7d143417811278f5885"), "SubjectName" : "MongoDB" }
{ "_id" : ObjectId("5eaae7d543417811278f5886"), "SubjectName" : "MongoDB" }