MongoDB-এ নেস্টেড অবজেক্ট (সাব-অবজেক্ট) এর ফিল্ড আপডেট বা যোগ করতে $set অপারেটর এবং ডট (.) নোটেশন ব্যবহার করা হয়।
নমুনা ডেটা তৈরি
> db.updateSubObjectDemo.insertOne({
"ClientId": 100,
"ClientDetails": {
"ClientFirstName": "Adam"
}
});
{ "acknowledged": true, "insertedId": ObjectId("5cd31434b64f4b851c3a13e9") }
ডকুমেন্ট দেখুন
> db.updateSubObjectDemo.find().pretty();আউটপুট:
{
"_id": ObjectId("5cd31434b64f4b851c3a13e9"),
"ClientId": 100,
"ClientDetails": {
"ClientFirstName": "Adam"
}
}
সাব-অবজেক্টে নতুন ফিল্ড ClientLastName যোগ করা
> db.updateSubObjectDemo.update(
{ClientId: 100},
{$set: {"ClientDetails.ClientLastName": "Smith"}}
);
WriteResult({ "nMatched": 1, "nUpserted": 0, "nModified": 1 })
আপডেট হওয়া ডকুমেন্ট যাচাই করুন
> db.updateSubObjectDemo.find().pretty();আউটপুট (ClientLastName যুক্ত হয়েছে):
{
"_id": ObjectId("5cd31434b64f4b851c3a13e9"),
"ClientId": 100,
"ClientDetails": {
"ClientFirstName": "Adam",
"ClientLastName": "Smith"
}
}
নোট: যদি ClientDetails অবজেক্টটি না থাকে, তবে $set সেটি তৈরি করে দেবে। পুরো অবজেক্ট রিপ্লেস না করে শুধু নির্দিষ্ট ফিল্ড আপডেট হয়।