Để đặt giới hạn cho $ inc, hãy sử dụng cú pháp dưới đây -
db.yourCollectionName.update({yourFieldName : {$lt : yourValue}}, {$inc : {yourFieldName : yourIncrementValue}},false,true); 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.limitIncrementDemo.insertOne({"StudentId":101,"StudentScore":95});
{
"acknowledged" : true,
"insertedId" : ObjectId("5cd2ce9eb64f4b851c3a13c3")
}
> db.limitIncrementDemo.insertOne({"StudentId":102,"StudentScore":55});
{
"acknowledged" : true,
"insertedId" : ObjectId("5cd2cea0b64f4b851c3a13c4")
}
> db.limitIncrementDemo.insertOne({"StudentId":103,"StudentScore":67});
{
"acknowledged" : true,
"insertedId" : ObjectId("5cd2cea1b64f4b851c3a13c5")
}
> db.limitIncrementDemo.insertOne({"StudentId":104,"StudentScore":56});
{
"acknowledged" : true,
"insertedId" : ObjectId("5cd2cea3b64f4b851c3a13c6")
}
> db.limitIncrementDemo.insertOne({"StudentId":105,"StudentScore":79});
{
"acknowledged" : true,
"insertedId" : ObjectId("5cd2cea4b64f4b851c3a13c7")
} 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.limitIncrementDemo.find().pretty();
Điều này sẽ tạo ra kết quả sau -
{
"_id" : ObjectId("5cd2ce9eb64f4b851c3a13c3"),
"StudentId" : 101,
"StudentScore" : 95
}
{
"_id" : ObjectId("5cd2cea0b64f4b851c3a13c4"),
"StudentId" : 102,
"StudentScore" : 55
}
{
"_id" : ObjectId("5cd2cea1b64f4b851c3a13c5"),
"StudentId" : 103,
"StudentScore" : 67
}
{
"_id" : ObjectId("5cd2cea3b64f4b851c3a13c6"),
"StudentId" : 104,
"StudentScore" : 56
}
{
"_id" : ObjectId("5cd2cea4b64f4b851c3a13c7"),
"StudentId" : 105,
"StudentScore" : 79
} Sau đây là truy vấn để đặt giới hạn thành $ inc -
> db.limitIncrementDemo.update({StudentScore : {$lt : 75}}, {$inc : {StudentScore : 10}},false,true);
WriteResult({ "nMatched" : 3, "nUpserted" : 0, "nModified" : 3 }) Hãy để chúng tôi kiểm tra tất cả các tài liệu từ bộ sưu tập trên -
> db.limitIncrementDemo.find().pretty();
Điều này sẽ tạo ra kết quả sau -
{
"_id" : ObjectId("5cd2ce9eb64f4b851c3a13c3"),
"StudentId" : 101,
"StudentScore" : 95
}
{
"_id" : ObjectId("5cd2cea0b64f4b851c3a13c4"),
"StudentId" : 102,
"StudentScore" : 65
}
{
"_id" : ObjectId("5cd2cea1b64f4b851c3a13c5"),
"StudentId" : 103,
"StudentScore" : 77
}
{
"_id" : ObjectId("5cd2cea3b64f4b851c3a13c6"),
"StudentId" : 104,
"StudentScore" : 66
}
{
"_id" : ObjectId("5cd2cea4b64f4b851c3a13c7"),
"StudentId" : 105,
"StudentScore" : 79
}