MongoDB查询以使用自定义变量增加特定值

设置一个自定义变量,update()并与$inc一起使用以递增。让我们创建一个包含文档的集合-

> db.demo271.insertOne({"Marks":56});
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5e4821211627c0c63e7dbabc")
}
> db.demo271.insertOne({"Marks":78});
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5e4821241627c0c63e7dbabd")
}
> db.demo271.insertOne({"Marks":72});
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5e48212b1627c0c63e7dbabe")
}

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

> db.demo271.find();

这将产生以下输出-

{ "_id" : ObjectId("5e4821211627c0c63e7dbabc"), "Marks" : 56 }
{ "_id" : ObjectId("5e4821241627c0c63e7dbabd"), "Marks" : 78 }
{ "_id" : ObjectId("5e48212b1627c0c63e7dbabe"), "Marks" : 72 }

以下是使用自定义变量递增的查询-

> var incrementValue=10;
> db.demo271.update(
...   { Marks: 78 },
...   { $inc: { Marks:incrementValue } }
...)
WriteResult({ "nMatched" : 1, "nUpserted" : 0, "nModified" : 1 })

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

> db.demo271.find();

这将产生以下输出-

{ "_id" : ObjectId("5e4821211627c0c63e7dbabc"), "Marks" : 56 }
{ "_id" : ObjectId("5e4821241627c0c63e7dbabd"), "Marks" : 88 }
{ "_id" : ObjectId("5e48212b1627c0c63e7dbabe"), "Marks" : 72 }