ใช้เมธอด find() พร้อมพารามิเตอร์ที่สอง (Projection) เพื่อระบุฟิลด์ที่ต้องการคืนค่า
ตัวอย่างการใช้งาน
สร้างคอลเลกชันพร้อมข้อมูล:
> db.specificFieldDemo.insertOne({"FirstName":"John","LastName":"Doe"});
{ "acknowledged" : true, "insertedId" : ObjectId("5cb8019a623186894665ae31") }
> db.specificFieldDemo.insertOne({"FirstName":"John","LastName":"Smith"});
{ "acknowledged" : true, "insertedId" : ObjectId("5cb801ab623186894665ae32") }
> db.specificFieldDemo.insertOne({"FirstName":"David","LastName":"Miller"});
{ "acknowledged" : true, "insertedId" : ObjectId("5cb801b3623186894665ae33") }
> db.specificFieldDemo.insertOne({"FirstName":"Sam","LastName":"Williams"});
{ "acknowledged" : true, "insertedId" : ObjectId("5cb801bf623186894665ae34") }
แสดงเอกสารทั้งหมด:
> db.specificFieldDemo.find().pretty();
ผลลัพธ์:
คืนค่าฟิลด์ LastName เท่านั้น (ซ่อน _id)
> db.specificFieldDemo.find({},{_id:0,LastName:1});ผลลัพธ์:
ไวยากรณ์ Projection:
{field: 1}- รวมฟิลด์นี้ (Include){field: 0}- ไม่รวมฟิลด์นี้ (Exclude)_idถูกรวมโดยอัตโนมัติ ต้องระบุ_id: 0ถ้าไม่ต้องการ- ไม่สามารถผสม Include/Exclude ได้ (ยกเว้น _id)