এজন্য শুধু update() ব্যবহার করুন আপডেট করতে। ডকুমেন্টসহ একটি কলেকশন তৈরি করি:
> db.dem0143.insertOne({"StudentId":1,"Details":{"Name":"Chris"}});
{ "acknowledged" : true, "insertedId" : ObjectId("5e32eb9efdf09dd6d08539b7") }
> db.dem0143.insertOne({"StudentId":2,"Details":{"Name":"David"}});
{ "acknowledged" : true, "insertedId" : ObjectId("5e32eba5fdf09dd6d08539b8") }
find() মেথড দিয়ে সব ডকুমেন্ট দেখান:
> db.dem0143.find();
আউটপুট:
{ "_id" : ObjectId("5e32eb9efdf09dd6d08539b7"), "StudentId" : 1, "Details" : { "Name" : "Chris" } }
{ "_id" : ObjectId("5e32eba5fdf09dd6d08539b8"), "StudentId" : 2, "Details" : { "Name" : "David" } }
সিংগেল আপডেটে $set এবং $push একসাথে বাস্তবায়নের কোয়েরি:
> db.dem0143.update({_id: ObjectId("5e32eba5fdf09dd6d08539b8")}, {$push: {StudentAge:21}, $set: {"Details.Name":"John Doe"}});
WriteResult({ "nMatched" : 1, "nUpserted" : 0, "nModified" : 1 })
আপডেট পরে find() দিয়ে ডকুমেন্ট দেখান:
> db.dem0143.find();
ফলাফল (নেস্টেড নাম পরিবর্তন এবং নতুন অ্যারে ফিল্ড যোগ হয়েছে):
{ "_id" : ObjectId("5e32eb9efdf09dd6d08539b7"), "StudentId" : 1, "Details" : { "Name" : "Chris" } }
{ "_id" : ObjectId("5e32eba5fdf09dd6d08539b8"), "StudentId" : 2, "Details" : { "Name" : "John Doe" }, "StudentAge" : [ 21 ] }