इसके लिए सिंटैक्स इस प्रकार है:
db.yourCollectionName.update({ }, { $set: { "yourOuterFieldName.yourInnerFieldName": "yourValue" } });
सिंटैक्स समझने के लिए, एक दस्तावेज़ के साथ एक संग्रह बनाते हैं। दस्तावेज़ के साथ संग्रह बनाने की क्वेरी इस प्रकार है:
> db.updateNestedValueDemo.insertOne({"CustomerName":"Chris", ... "CustomerDetails":{"CustomerAge":25,"CustomerCompanyName":"Google","CustomerCityName":"US"}}); { "acknowledged" : true, "insertedId" : ObjectId("5c8fccc4d3c9d04998abf015") }
find() विधि की मदद से संग्रह से सभी दस्तावेज़ प्रदर्शित करें। क्वेरी इस प्रकार है:
> db.updateNestedValueDemo.find().pretty();
आउटपुट निम्न है:
{ "_id" : ObjectId("5c8fccc4d3c9d04998abf015"), "CustomerName" : "Chris", "CustomerDetails" : { "CustomerAge" : 25, "CustomerCompanyName" : "Google", "CustomerCityName" : "US" } }
$set का उपयोग करके नेस्टेड मान/एंबेडेड दस्तावेज़ को अपडेट करने की क्वेरी यहाँ है:
> db.updateNestedValueDemo.update({ }, { $set: { "CustomerDetails.CustomerCompanyName": "Dell" } }); WriteResult({ "nMatched" : 1, "nUpserted" : 0, "nModified" : 1 })
आइए find() मेथड का उपयोग करके संग्रह से दस्तावेज़ जांचते हैं:
> db.updateNestedValueDemo.find().pretty();
आउटपुट निम्न है:
{ "_id" : ObjectId("5c8fccc4d3c9d04998abf015"), "CustomerName" : "Chris", "CustomerDetails" : { "CustomerAge" : 25, "CustomerCompanyName" : "Dell", "CustomerCityName" : "US" } }
उपरोक्त नमूना आउटपुट को देखें, नेस्टेड फ़ील्ड "CustomerCompanyName" "Google" से "Dell" में बदल गया है।