এজন্য find() এবং update() ব্যবহার করুন। ডকুমেন্টসহ একটি কলেকশন তৈরি করি:
> db.demo124.insertOne(
{
"Name" : "John",
"Id" : 101,
"ProjectDetails" : [
{ "ProjectName1" : "Online Book", "ProjectName2" : "Online Banking" },
{ "ProjectName1" : "Online Library Management System", "ProjectName2" : "School Management System" }
]
}
);
{ "acknowledged" : true, "insertedId" : ObjectId("5e2f2c8b140daf4c2a3544bb") }
find() মেথড দিয়ে সব ডকুমেন্ট দেখান:
> db.demo124.find();
আউটপুট:
{ "_id" : ObjectId("5e2f2c8b140daf4c2a3544bb"), "Name" : "John", "Id" : 101, "ProjectDetails" : [ { "ProjectName1" : "Online Book", "ProjectName2" : "Online Banking" }, { "ProjectName1" : "Online Library Management System", "ProjectName2" : "School Management System" } ] }
নেস্টেড অ্যারেতে নতুন আইটেম যোগ করার কোয়েরি:
> db.demo124.find().toArray().forEach(
function(d){
for(var i = 0; i < d.ProjectDetails.length; ++i) {
d.ProjectDetails[i]['ProjectName3'] = 'Online Snake Game';
}
db.demo124.update({_id: d._id}, d);
}
);
আপডেট পরে find() দিয়ে ডকুমেন্ট দেখান:
> db.demo124.find().pretty();
ফলাফল (প্রতিটি সাব-ডকুমেন্টে ProjectName3 যোগ হয়েছে):
{ "_id" : ObjectId("5e2f2c8b140daf4c2a3544bb"), "Name" : "John", "Id" : 101, "ProjectDetails" : [ { "ProjectName1" : "Online Book", "ProjectName2" : "Online Banking", "ProjectName3" : "Online Snake Game" }, { "ProjectName1" : "Online Library Management System", "ProjectName2" : "School Management System", "ProjectName3" : "Online Snake Game" } ] }