$set অপারেটর ব্যবহার করে অ্যারে ফিল্ডকে খালি অ্যারে ([ ]) সেট করা
MongoDB-এ একটি অ্যারে ফিল্ডের সব এলিমেন্ট একসাথে মুছে ফেলার সবচেয়ে সহজ পদ্ধতি হলো সেটি খালি অ্যারে [] দিয়ে $set করা।
সিনট্যাক্স
db.yourCollectionName.update(
{},
{ $set: { "yourFieldName": [] } },
{ multi: true }
);
উদাহরণ
> db.deleteAllElementsInArrayDemo.insertOne({"InstructorName":"Larry","InstructorTechnicalSubject":["Java","MongoDB"]});
> db.deleteAllElementsInArrayDemo.insertOne({"InstructorName":"Mike","InstructorTechnicalSubject":["C","C++","Python"]});
সব এলিমেন্ট মুছে ফেলা
> db.deleteAllElementsInArrayDemo.update(
{},
{ $set: { "InstructorTechnicalSubject": [] } },
{ multi: true }
);
WriteResult({ "nMatched": 2, "nUpserted": 0, "nModified": 2 })
ফলাফল যাচাই
> db.deleteAllElementsInArrayDemo.find().pretty();
{
"_id" : ObjectId("5c8fb971d3c9d04998abf00e"),
"InstructorName" : "Larry", "InstructorTechnicalSubject" : [ ]
}
{
"_id" : ObjectId("5c8fb98ad3c9d04998abf00f"),
"InstructorName" : "Mike", "InstructorTechnicalSubject" : [ ]
}
মডার্ন সিনট্যাক্স: db.collection.updateMany({}, { $set: { "InstructorTechnicalSubject": [] } })
বিকল্প: $unset দিয়ে ফিল্ডটিই মুছে ফেলা যায়, কিন্তু সেটি ফিল্ডকে ডকুমেন্ট থেকে বাদ দেয়, খালি অ্যারে রাখে না।