ตั้งค่าฟิลด์ที่คุณไม่ต้องการรวมเป็น 0 ซึ่งจะแสดงค่าที่เหลือในขณะที่ใช้ find() ให้เราสร้างคอลเลกชันที่มีเอกสารก่อน -
> db.demo237.insertOne({
... _id:101,
... Product: {
... description1: {id:1001 },
... description2: {Name:"Product-1" },
... description3: {Price:550 }
... }
...}
...);
{ "acknowledged" : true, "insertedId" : 101 } แสดงเอกสารทั้งหมดจากคอลเล็กชันโดยใช้วิธี find() -
> db.demo237.find().pretty();
สิ่งนี้จะสร้างผลลัพธ์ต่อไปนี้ -
{
"_id" : 101,
"Product" : {
"description1" : {
"id" : 1001
},
"description2" : {
"Name" : "Product-1"
},
"description3" : {
"Price" : 550
}
}
} ต่อไปนี้เป็นแบบสอบถามที่จะลบทั้งหมดยกเว้นฟิลด์เดียวจากเอกสารที่ซ้อนกันผ่านการฉาย -
> db.demo237.find({}, { "Product.description1": 0, "Product.description3": 0 }); สิ่งนี้จะสร้างผลลัพธ์ต่อไปนี้ -
{ "_id" : 101, "Product" : { "description2" : { "Name" : "Product-1" } } }