使用变量本身更新MongoDB变量值?

您不能使用自身更新列值。为此,您可以使用$set。让我们创建一个包含文档的集合-

> db.demo256.insertOne({"Name":"Chris"});
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5e47a3e91627c0c63e7dba8b")
}
> db.demo256.insertOne({"Name":"Bob"});
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5e47a3ea1627c0c63e7dba8c")
}
> db.demo256.insertOne({"Name":"David"});
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5e47a3eb1627c0c63e7dba8d")
}

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

> db.demo256.find();

这将产生以下输出-

{ "_id" : ObjectId("5e47a3e91627c0c63e7dba8b"), "Name" : "Chris" }
{ "_id" : ObjectId("5e47a3ea1627c0c63e7dba8c"), "Name" : "Bob" }
{ "_id" : ObjectId("5e47a3eb1627c0c63e7dba8d"), "Name" : "David" }

以下是使用变量本身更新变量值的查询-

> db.demo256.update({}, {$set:{"Name":"Name" + " is a student"}});
WriteResult({ "nMatched" : 1, "nUpserted" : 0, "nModified" : 1 })

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

> db.demo256.find();

这将产生以下输出-

{ "_id" : ObjectId("5e47a5301627c0c63e7dba8e"), "Name" : "Name is a student" }
{ "_id" : ObjectId("5e47a5311627c0c63e7dba8f"), "Name" : "Bob" }
{ "_id" : ObjectId("5e47a5311627c0c63e7dba90"), "Name" : "David" }