ใช้ Projection ใน find() เพื่อเลือกแสดงเฉพาะฟิลด์ที่ต้องการ โดยตั้งค่าเป็น true (หรือ 1) สำหรับฟิลด์ที่ต้องการ และ false (หรือ 0) สำหรับฟิลด์ที่ไม่ต้องการ เริ่มต้นด้วยการสร้างคอลเลกชันตัวอย่าง:
> db.querySelectDemo.insertOne({UserId:100,UserName:"Chris",UserAge:25});
{ "acknowledged" : true, "insertedId" : ObjectId("5ce90eb478f00858fb12e90e") }
> db.querySelectDemo.insertOne({UserId:101,UserName:"Robert",UserAge:26});
{ "acknowledged" : true, "insertedId" : ObjectId("5ce90ec578f00858fb12e90f") }
> db.querySelectDemo.insertOne({UserId:103,UserName:"David",UserAge:27});
{ "acknowledged" : true, "insertedId" : ObjectId("5ce90ed478f00858fb12e910") }
แสดงเอกสารทั้งหมด:
> db.querySelectDemo.find().pretty();
คิวรี่เลือกแสดงเฉพาะ UserName (ซ่อน _id, UserId, UserAge):
> db.querySelectDemo.find({},{_id:0,UserName:true});กฎของ Projection:
- ไม่สามารถผสม include (1/true) และ exclude (0/false) ได้ ยกเว้น _id
{_id: 0}ซ่อน _id ได้เสมอ{field: 1}แสดง field นั้นๆ เท่านั้น (include mode){field: 0}ซ่อน field นั้นๆ แสดงอื่นๆ (exclude mode)