আপডেট করতে update() এবং $set ব্যবহার করুন। ডকুমেন্টসহ একটি কলেকশন তৈরি করি:
>db.demo134.insertOne({"EmployeeId":101,"EmployeeDetails":[{"EmployeeName":"Chris","EmployeeAge":27},{"EmployeeName":"Bob","EmployeeAge":28}]});
{ "acknowledged" : true, "insertedId" : ObjectId("5e319b2f68e7f832db1a7f7c") }
>db.demo134.insertOne({"EmployeeId":102,"EmployeeDetails":[{"EmployeeName":"David","EmployeeAge":24},{"EmployeeName":"Carol","EmployeeAge":29}]});
{ "acknowledged" : true, "insertedId" : ObjectId("5e319b4468e7f832db1a7f7d") }
find() মেথড দিয়ে সব ডকুমেন্ট দেখান:
> db.demo134.find().pretty();
আউটপুট:
{ "_id" : ObjectId("5e319b2f68e7f832db1a7f7c"), "EmployeeId" : 101, "EmployeeDetails" : [ { "EmployeeName" : "Chris", "EmployeeAge" : 27 }, { "EmployeeName" : "Bob", "EmployeeAge" : 28 } ] }
{ "_id" : ObjectId("5e319b4468e7f832db1a7f7d"), "EmployeeId" : 102, "EmployeeDetails" : [ { "EmployeeName" : "David", "EmployeeAge" : 24 }, { "EmployeeName" : "Carol", "EmployeeAge" : 29 } ] }
MongoDB-তে সাব-ডকুমেন্টের অ্যারে আপডেট করার কোয়েরি (EmployeeId 101 এবং EmployeeName Chris 가진 সাব-ডকুমেন্ট আপডেট):
> db.demo134.update(
{
"EmployeeId":101,
"EmployeeDetails.EmployeeName":"Chris"
},
{
$set: {
"EmployeeDetails.$.EmployeeName" : "Robert"
}
}
);
WriteResult({ "nMatched" : 1, "nUpserted" : 0, "nModified" : 1 })
আপডেট পরে find() দিয়ে ডকুমেন্ট দেখান:
> db.demo134.find().pretty();
ফলাফল (Chris এর নাম Robert হয়েছে):
{ "_id" : ObjectId("5e319b2f68e7f832db1a7f7c"), "EmployeeId" : 101, "EmployeeDetails" : [ { "EmployeeName" : "Robert", "EmployeeAge" : 27 }, { "EmployeeName" : "Bob", "EmployeeAge" : 28 } ] }
{ "_id" : ObjectId("5e319b4468e7f832db1a7f7d"), "EmployeeId" : 102, "EmployeeDetails" : [ { "EmployeeName" : "David", "EmployeeAge" : 24 }, { "EmployeeName" : "Carol", "EmployeeAge" : 29 } ] }