สำหรับสิ่งนี้ ให้ใช้ $all ตัวดำเนินการ $all จะเลือกเอกสารที่ค่าของเขตข้อมูลเป็นอาร์เรย์ที่มีองค์ประกอบที่ระบุทั้งหมด ให้เราสร้างคอลเลกชันที่มีเอกสาร -
> db.demo642.insertOne( ... { ... _id:1, ... ListOfNames:["Robert","John"] ... } ... ); { "acknowledged" : true, "insertedId" : 1 } > db.demo642.insertOne( { _id:2, ListOfNames:["Robert","Chris"] } ); { "acknowledged" : true, "insertedId" : 2 }
แสดงเอกสารทั้งหมดจากคอลเล็กชันโดยใช้วิธี find() -
> db.demo642.find();
สิ่งนี้จะสร้างผลลัพธ์ต่อไปนี้ -
{ "_id" : 1, "ListOfNames" : [ "Robert", "John" ] } { "_id" : 2, "ListOfNames" : [ "Robert", "Chris" ] }
ต่อไปนี้เป็นแบบสอบถามเพื่อรับรายชื่อเฉพาะจากเอกสารที่ค่าของเขตข้อมูลเป็นอาร์เรย์ -
> db.demo642.find({ListOfNames: { ... $all: [ "Chris", "Robert" ] ... }})
สิ่งนี้จะสร้างผลลัพธ์ต่อไปนี้ -
{ "_id" : 2, "ListOfNames" : [ "Robert", "Chris" ] }