หากต้องการยกเว้นค่าฟิลด์ประเภทอาร์เรย์ ให้ใช้ 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" : [ { }, { } ] }