ในการอัปเดตหรือแก้ไขเอกสารที่มีอยู่ของคอลเล็กชันใน MongoDB คุณต้องใช้เมธอด update() ไวยากรณ์มีดังนี้:
db.yourCollectionName.update(yourExistingValue, yourUpdatedValue);
ที่นี่ เราจะสร้างคอลเลกชันที่มีข้อมูลอัพเดตชื่อ แบบสอบถามเพื่อสร้างคอลเลกชันมีดังนี้ MongoDB สร้างคอลเลกชันโดยอัตโนมัติเมื่อคุณแทรกเอกสารโดยใช้เมธอด insert() ดังที่แสดงด้านล่าง:
> db.updateInformation.insert({"StudentName":"Larry",StudentAge:35,StudentMarks:89});
ต่อไปนี้เป็นผลลัพธ์:
WriteResult({ "nInserted" : 1 })
ตอนนี้คุณสามารถแสดงเอกสารโดยใช้เมธอด find() จากข้อมูลการอัพเดทคอลเล็กชัน แบบสอบถามมีดังนี้:
> db.updateInformation.find();
ต่อไปนี้เป็นผลลัพธ์ที่แสดงเอกสารในคอลเล็กชันที่เราเพิ่มด้านบน:
{ "_id" : ObjectId("5c6aa29a64f3d70fcc9147f7"), "StudentName" : "Larry", "StudentAge" : 35, "StudentMarks" : 89 }
ตอนนี้ให้เราอัปเดตหรือแก้ไขเอกสารที่มีอยู่ 'StudentAge' 35 ถึง 24 สำหรับสิ่งนี้ เราจะใช้เมธอด update() แบบสอบถามมีดังนี้:
> db.updateInformation.update({StudentAge:35},{$set:{StudentAge:24}});
ต่อไปนี้เป็นผลลัพธ์:
WriteResult({ "nMatched" : 1, "nUpserted" : 0, "nModified" : 1 })
เราได้อัปเดต StudentAge 35 เป็น 24 ด้านบนแล้ว ให้เราตรวจสอบเอกสารอีกครั้ง แบบสอบถามมีดังนี้:
> db.updateInformation.find().pretty();
ต่อไปนี้เป็นผลลัพธ์:
{ "_id" : ObjectId("5c6aa29a64f3d70fcc9147f7"), "StudentName" : "Larry", "StudentAge" : 24, "StudentMarks" : 89 }
ดูที่ช่อง StudentAge ด้านบน อัปเดตอายุเป็น 24/ ก่อนหน้านี้คือ 35