ใช่ คุณสามารถทำสิ่งนี้ได้ด้วย findAndModify() ให้เราสร้างคอลเลกชันที่มีเอกสารก่อน -
> db.returnResultOfIncementDemo.insertOne({"PlayerScore":98}); { "acknowledged" : true, "insertedId" : ObjectId("5cd3c292edc6604c74817cda") }
ต่อไปนี้เป็นแบบสอบถามเพื่อแสดงเอกสารทั้งหมดจากคอลเลกชันโดยใช้วิธี find() -
> db.returnResultOfIncementDemo.find();
สิ่งนี้จะสร้างผลลัพธ์ต่อไปนี้ -
{ "_id" : ObjectId("5cd3c292edc6604c74817cda"), "PlayerScore" : 98 }
ต่อไปนี้เป็นแบบสอบถามเพื่อส่งคืนผลลัพธ์ของการเพิ่มขึ้น ที่นี่ เราได้เพิ่ม PlayerScore ขึ้น 2 –
> db.returnResultOfIncementDemo.findAndModify({ ... query:{}, ... update: { $inc: {PlayerScore: 2 }}, ... new: true ... });
สิ่งนี้จะสร้างผลลัพธ์ต่อไปนี้ -
{ "_id" : ObjectId("5cd3c292edc6604c74817cda"), "PlayerScore" : 100 }