如何在 MongoDB 中递增字段?

mongodbdatabasebig data analytics

要在 MongoDB 中递增字段,可以使用 $inc 运算符。我们首先创建一个包含文档的集合。

> db.incrementDemo.insertOne({"PlayerScore":100});
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5cc81cdd8f9e6ff3eb0ce44e")
}
> db.incrementDemo.insertOne({"PlayerScore":290});
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5cc81ce28f9e6ff3eb0ce44f")
}
> db.incrementDemo.insertOne({"PlayerScore":560});
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5cc81ce68f9e6ff3eb0ce450")
}

以下是使用 find() 方法显示集合中的所有文档的查询 −

> db.incrementDemo.find().pretty();

这将产生以下输出 −

{ "_id" : ObjectId("5cc81cdd8f9e6ff3eb0ce44e"), "PlayerScore" : 100 }
{ "_id" : ObjectId("5cc81ce28f9e6ff3eb0ce44f"), "PlayerScore" : 290 }
{ "_id" : ObjectId("5cc81ce68f9e6ff3eb0ce450"), "PlayerScore" : 560 }

以下是 MongoDB 中递增字段的查询 −

> db.incrementDemo.update({ _id:ObjectId("5cc81ce28f9e6ff3eb0ce44f") },{ $inc: {"PlayerScore":10 }});
WriteResult({ "nMatched" : 1, "nUpserted" : 0, "nModified" : 1 })

在上述查询中,我将值 290 加了 10。 −

> db.incrementDemo.find().pretty();

这将产生以下输出 −

{ "_id" : ObjectId("5cc81cdd8f9e6ff3eb0ce44e"), "PlayerScore" : 100 }
{ "_id" : ObjectId("5cc81ce28f9e6ff3eb0ce44f"), "PlayerScore" : 300 }
{ "_id" : ObjectId("5cc81ce68f9e6ff3eb0ce450"), "PlayerScore" : 560 }

相关文章