ডট নোটেশন (Dot Notation) দিয়ে নেস্টেড ফিল্ড আপডেট
MongoDB-এ এমবেডেড ডকুমেন্টের ভেতরের ফিল্ড আপডেট করতে $set অপারেটর সাথে ডট নোটেশন (outerField.innerField) ব্যবহার করা হয়।
সিনট্যাক্স
db.yourCollectionName.update(
{ },
{ $set: { "yourOuterFieldName.yourInnerFieldName": "yourValue" } }
);
উদাহরণ
> db.updateNestedValueDemo.insertOne({
"CustomerName": "Chris",
"CustomerDetails": {
"CustomerAge": 25,
"CustomerCompanyName": "Google",
"CustomerCityName": "US"
}
});
আপডেট করার আগে
{
"_id" : ObjectId("5c8fccc4d3c9d04998abf015"),
"CustomerName" : "Chris",
"CustomerDetails" : {
"CustomerAge" : 25,
"CustomerCompanyName" : "Google",
"CustomerCityName" : "US"
}
}
CustomerCompanyName "Google" থেকে "Dell" করা
> db.updateNestedValueDemo.update(
{ },
{ $set: { "CustomerDetails.CustomerCompanyName": "Dell" } }
);
WriteResult({ "nMatched": 1, "nUpserted": 0, "nModified": 1 })
আপডেটের পর
{
"_id" : ObjectId("5c8fccc4d3c9d04998abf015"),
"CustomerName" : "Chris",
"CustomerDetails" : {
"CustomerAge" : 25,
"CustomerCompanyName" : "Dell",
"CustomerCityName" : "US"
}
}
নোট: ডট নোটেশন ব্যবহার না করলে পুরো CustomerDetails অবজেক্ট রিপ্লেস হয়ে যাবে। আপডেট অনেকগুলো ডকুমেন্টে করতে হলে updateMany ব্যবহার করুন।