MongoDB में डबल-नेस्टेड (दो स्तर नेस्टेड) ऐरे से एलिमेंट हटाने के लिए $pull ऑपरेटर का उपयोग करें।
उदाहरण से समझें
एक कलेक्शन बनाकर डबल-नेस्टेड ऐरे वाला डॉक्यूमेंट इन्सर्ट करते हैं:
> db.removeElementFromDoublyNestedArrayDemo.insertOne({
"_id": "1",
"UserName": "Larry",
"UserDetails": [{
"UserCountryName": "US",
"UserLocation": [
{"UserCityName": "New York"},
{"UserZipCode": "10001"}
]
}]
});
> db.removeElementFromDoublyNestedArrayDemo.insertOne({
"_id": "2",
"UserName": "Mike",
"UserDetails": [{
"UserCountryName": "UK",
"UserLocation": [
{"UserCityName": "Bangor"},
{"UserZipCode": "20010"}
]
}]
});
सभी डॉक्यूमेंट देखने के लिए:
> db.removeElementFromDoublyNestedArrayDemo.find().pretty();
आउटपुट:
अब
_id: "2"वाले डॉक्यूमेंट मेंUserDetails.0.UserLocationऐरे सेUserZipCode: "20010"वाला ऑब्जेक्ट हटाएं:> db.removeElementFromDoublyNestedArrayDemo.update( {_id: "2"}, {$pull: {"UserDetails.0.UserLocation": {"UserZipCode": "20010"}}} ); WriteResult({ "nMatched": 1, "nUpserted": 0, "nModified": 1 })फिर से चेक करें:
> db.removeElementFromDoublyNestedArrayDemo.find().pretty();आउटपुट:
UserZipCode: "20010"वाला ऑब्जेक्ट डबल-नेस्टेड ऐरे से हटा दिया गया।