Computer >> Máy Tính >  >> Lập trình >> MongoDB

Làm cách nào để tăng một trường trong MongoDB?

Để tăng một trường trong MongoDB, bạn có thể sử dụng toán tử $ inc. Trước tiên, hãy để chúng tôi tạo một bộ sưu tập với các tài liệu -

> 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")
}

Sau đây là truy vấn để hiển thị tất cả các tài liệu từ một bộ sưu tập với sự trợ giúp của phương thức find () -

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

Điều này sẽ tạo ra kết quả sau -

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

Sau đây là truy vấn để tăng một trường trong MongoDB -

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

Trong truy vấn trên, tôi đã tăng giá trị 290 với giá trị 10 -

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

Điều này sẽ tạo ra kết quả sau -

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