หากต้องการอัปเดตวัตถุลูก ให้ใช้ตัวดำเนินการ $set ให้เราสร้างคอลเลกชันที่มีเอกสารก่อน -
>db.updateChildObjectsDemo.insertOne({"StudentName":"Chris","StudentOtherDetails":{"StudentSubject":"MongoDB","StudentCountryName":"AUS"}}); { "acknowledged" : true, "insertedId" : ObjectId("5ce964e078f00858fb12e91f") }
ต่อไปนี้เป็นแบบสอบถามเพื่อแสดงเอกสารทั้งหมดจากคอลเลกชันโดยใช้วิธี find() -
> db.updateChildObjectsDemo.find().pretty();
สิ่งนี้จะสร้างผลลัพธ์ต่อไปนี้ -
{ "_id" : ObjectId("5ce964e078f00858fb12e91f"), "StudentName" : "Chris", "StudentOtherDetails" : { "StudentSubject" : "MongoDB", "StudentCountryName" : "AUS" } }
ต่อไปนี้เป็นแบบสอบถามเพื่ออัปเดตวัตถุลูกใน MongoDB -
> db.updateChildObjectsDemo.update({"StudentName" : "Chris"},{$set:{"StudentOtherDetails.StudentCountryName":"UK"}}); WriteResult({ "nMatched" : 1, "nUpserted" : 0, "nModified" : 1 })
ให้เราตรวจสอบเอกสารอีกครั้ง -
> db.updateChildObjectsDemo.find().pretty();
สิ่งนี้จะสร้างผลลัพธ์ต่อไปนี้ -
{ "_id" : ObjectId("5ce964e078f00858fb12e91f"), "StudentName" : "Chris", "StudentOtherDetails" : { "StudentSubject" : "MongoDB", "StudentCountryName" : "UK" } }