MongoDB নথিতে একটি দ্বিগুণ-নেস্টেড অ্যারে থেকে একটি উপাদান সরাতে, আপনি $pull অপারেটর ব্যবহার করতে পারেন৷
ধারণাটি বুঝতে, আসুন ডকুমেন্টের সাথে একটি সংগ্রহ তৈরি করি। একটি নথির সাথে একটি সংগ্রহ তৈরি করার প্রশ্নটি নিম্নরূপ -
> db.removeElementFromDoublyNestedArrayDemo.insertOne(
... {
... "_id" : "1",
... "UserName" : "Larry",
... "UserDetails" : [
... {
... "UserCountryName" : "US",
... "UserLocation" : [
... {
... "UserCityName" : "New York"
... },
... {
... "UserZipCode" : "10001"
... }
... ]
... }
... ]
... }
... );
{ "acknowledged" : true, "insertedId" : "1" }
> db.removeElementFromDoublyNestedArrayDemo.insertOne(
... {
... "_id" : "2",
... "UserName" : "Mike",
... "UserDetails" : [
... {
... "UserCountryName" : "UK",
... "UserLocation" : [
... {
... "UserCityName" : "Bangor"
... },
... {
... "UserZipCode" : "20010"
... }
... ]
... }
... ]
... }
... );
{ "acknowledged" : true, "insertedId" : "2" } Find() পদ্ধতির সাহায্যে একটি সংগ্রহ থেকে সমস্ত নথি প্রদর্শন করুন। প্রশ্নটি নিম্নরূপ -
> db.removeElementFromDoublyNestedArrayDemo.find().pretty();
নিচের আউটপুট −
{
"_id" : "1",
"UserName" : "Larry",
"UserDetails" : [
{
"UserCountryName" : "US",
"UserLocation" : [
{
"UserCityName" : "New York"
},
{
"UserZipCode" : "10001"
}
]
}
]
}
{
"_id" : "2",
"UserName" : "Mike",
"UserDetails" : [
{
"UserCountryName" : "UK",
"UserLocation" : [
{
"UserCityName" : "Bangor"
},
{
"UserZipCode" : "20010"
}
]
}
]
} MongoDB নথিতে একটি দ্বিগুণ-নেস্টেড অ্যারে থেকে একটি উপাদান সরানোর জন্য এখানে ক্যোয়ারী রয়েছে −
> db.removeElementFromDoublyNestedArrayDemo.update(
... { _id : "2" },
... {$pull : {"UserDetails.0.UserLocation" : {"UserZipCode":"20010"}}}
... );
WriteResult({ "nMatched" : 1, "nUpserted" : 0, "nModified" : 1 }) আসুন আমরা find() এর সাহায্যে একটি সংগ্রহ থেকে নথি পরীক্ষা করি। প্রশ্নটি নিম্নরূপ -
> db.removeElementFromDoublyNestedArrayDemo.find().pretty();
নিচের আউটপুট −
{
"_id" : "1",
"UserName" : "Larry",
"UserDetails" : [
{
"UserCountryName" : "US",
"UserLocation" : [
{
"UserCityName" : "New York"
},
{
"UserZipCode" : "10001"
}
]
}
]
}
{
"_id" : "2",
"UserName" : "Mike",
"UserDetails" : [
{
"UserCountryName" : "UK",
"UserLocation" : [
{
"UserCityName" : "Bangor"
}
]
}
]
} এখন ক্ষেত্র "UserZipCode":"20010" একটি দ্বিগুণ-নেস্টেড অ্যারে থেকে সরানো হয়েছে৷