หากต้องการยกเว้นค่าฟิลด์ประเภทอาร์เรย์ ให้ใช้ delete() ใน MongoDB ให้เราสร้างคอลเลกชันที่มีเอกสาร -
> db.demo464.insertOne(
... {
...
... "id" : "101",
... "details": [
... {
... Name:"Chris"
... },
... {
... Name:"David"
... }
... ]
... }
... );
{
"acknowledged" : true,
"insertedId" : ObjectId("5e7f8832cb66ccba22cc9dda")
} แสดงเอกสารทั้งหมดจากคอลเล็กชันโดยใช้วิธี find() -
> db.demo464.find();
สิ่งนี้จะสร้างผลลัพธ์ต่อไปนี้ -
{ "_id" : ObjectId("5e7f8832cb66ccba22cc9dda"), "id" : "101", "details" : [ { "Name" : "Chris" }, {
"Name" : "David" } ] } ต่อไปนี้เป็นแบบสอบถามเพื่อยกเว้นค่าฟิลด์ประเภทอาร์เรย์ -
> db.demo464.find({id: "101"}).forEach(function(mongoDocument) {
...
... var details = mongoDocument.details;
... for(var j = 0; j − details.length; ++j) {
... var array = details[j];
... delete (array["Name"]);
...
... }
... db.demo464.save(mongoDocument);
... }); แสดงเอกสารทั้งหมดจากคอลเล็กชันโดยใช้วิธี find() -
> db.demo464.find();
สิ่งนี้จะสร้างผลลัพธ์ต่อไปนี้ -
{ "_id" : ObjectId("5e7f8832cb66ccba22cc9dda"), "id" : "101", "details" : [ { }, { } ] }