在更新MongoDB文档时如何使用自定义变量

要更新,请使用update(),以下是创建和使用示例自定义变量的语法-

var anyVariableName=yourValue;
db.yourCollectionName.update({filter},{$set:{yourFieldName:yourVariableName}});

让我们创建一个包含文档的集合-

> db.demo600.insertOne({id:1,Name:"Robert"});{
   "acknowledged" : true, "insertedId" : ObjectId("5e94a063f5f1e70e134e2699")
}
> db.demo600.insertOne({id:2,Name:"Mike"});{
   "acknowledged" : true, "insertedId" : ObjectId("5e94a06bf5f1e70e134e269a")
}
> db.demo600.insertOne({id:3,Name:"Sam"});{
   "acknowledged" : true, "insertedId" : ObjectId("5e94a072f5f1e70e134e269b")
}

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

> db.demo600.find();

这将产生以下输出-

{ "_id" : ObjectId("5e94a063f5f1e70e134e2699"), "id" : 1, "Name" : "Robert" }
{ "_id" : ObjectId("5e94a06bf5f1e70e134e269a"), "id" : 2, "Name" : "Mike" }
{ "_id" : ObjectId("5e94a072f5f1e70e134e269b"), "id" : 3, "Name" : "Sam" }

以下是在更新MongoDB文档时使用自定义变量的查询-

> var replaceName="David";
> db.demo600.update({id:2},{$set:{Name:replaceName}});
WriteResult({ "nMatched" : 1, "nUpserted" : 0, "nModified" : 1 })

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

> db.demo600.find();

这将产生以下输出-

{ "_id" : ObjectId("5e94a063f5f1e70e134e2699"), "id" : 1, "Name" : "Robert" }
{ "_id" : ObjectId("5e94a06bf5f1e70e134e269a"), "id" : 2, "Name" : "David" }
{ "_id" : ObjectId("5e94a072f5f1e70e134e269b"), "id" : 3, "Name" : "Sam" }