หากต้องการกรองรายการตามฟิลด์และฟิลด์ย่อย ให้ใช้เครื่องหมายจุด ให้เราสร้างคอลเลกชันที่มีเอกสาร -
> db.demo638.insert({Name:"Chris"});
WriteResult({ "nInserted" : 1 })
> db.demo638.insert({Name:"David",details:{Subject:"MongoDB"}});
WriteResult({ "nInserted" : 1 }) แสดงเอกสารทั้งหมดจากคอลเล็กชันโดยใช้วิธี find() -
> db.demo638.find().pretty();
สิ่งนี้จะสร้างผลลัพธ์ต่อไปนี้ -
{ "_id" : ObjectId("5e9c28666c954c74be91e6de"), "Name" : "Chris" }
{
"_id" : ObjectId("5e9c28866c954c74be91e6df"),
"Name" : "David",
"details" : {
"Subject" : "MongoDB"
}
} ต่อไปนี้เป็นแบบสอบถามเพื่อกรองรายการตามหลายฟิลด์และฟิลด์ย่อย -
> db.demo638.find({"details.Subject":null}); สิ่งนี้จะสร้างผลลัพธ์ต่อไปนี้ -
{ "_id" : ObjectId("5e9c28666c954c74be91e6de"), "Name" : "Chris" }