$set ऑपरेटर का उपयोग करके सरणी खाली करना
नेस्टेड सरणी सहित किसी भी सरणी फ़ील्ड को खाली सरणी पर सेट करने के लिए $set का उपयोग करें।
उदाहरण: नेस्टेड सरणी के साथ दस्तावेज़ डालना
> db.clearingItemsInNestedArrayDemo.insertOne(
{
"StudentName" : "John",
"StudentDetails" : [
{
"ProjectName" : "Online Banking",
"ProjectDetails" : [
{ "TechnologyUsed" : "Java", "TeamSize" : 5 }
]
}
]
}
);
{ "acknowledged" : true, "insertedId" : ObjectId("5c9930b4330fd0aa0d2fe4ce") }
साफ़ करने से पहले देखना
> db.clearingItemsInNestedArrayDemo.find().pretty();
नेस्टेड सरणी खाली करना (StudentDetails को खाली सरणी पर सेट करना)
> db.clearingItemsInNestedArrayDemo.update(
{"StudentName": "John"},
{"$set": {"StudentDetails": []}}
);
WriteResult({ "nMatched" : 1, "nUpserted" : 0, "nModified" : 1 })
सत्यापन
> db.clearingItemsInNestedArrayDemo.find().pretty();
आउटपुट:
नोट: यह पूरे
StudentDetailsसरणी को बदल देता है। यदि आप केवल आंतरिक सरणी (ProjectDetails) को साफ़ करना चाहते हैं लेकिन बाहरी संरचना रखना चाहते हैं, तो आपको स्थितीय ऑपरेटर$या$[](सभी तत्वों के लिए) का उपयोग करके अपडेट करना होगा।