Computer >> บทช่วยสอนคอมพิวเตอร์ >  >> การเขียนโปรแกรม >> MongoDB

Query รายชื่อเฉพาะจาก Documents ที่ Field เป็น Array ใน MongoDB

การ Query รายชื่อด้วย $all Operator

สำหรับการนี้ ให้ใช้ $all Operator $all จะเลือกเอกสารที่ค่าของ Field เป็น Array ที่มี Element ทั้งหมดที่ระบุ

สร้าง Collection พร้อมข้อมูล

> db.demo642.insertOne(
...     {
...         _id:1,
...         ListOfNames:["Robert","John"]
...     }
... );
{ "acknowledged" : true, "insertedId" : 1 }
> db.demo642.insertOne( { _id:2, ListOfNames:["Robert","Chris"] } );
{ "acknowledged" : true, "insertedId" : 2 }

แสดงเอกสารทั้งหมด

> db.demo642.find();

ผลลัพธ์:

{ "_id" : 1, "ListOfNames" : [ "Robert", "John" ] }
{ "_id" : 2, "ListOfNames" : [ "Robert", "Chris" ] }

คิวรีหารายชื่อที่มีทั้ง Chris และ Robert

> db.demo642.find({ListOfNames: {
...     $all: [ "Chris", "Robert" ]
... }})

ผลลัพธ์:

{ "_id" : 2, "ListOfNames" : [ "Robert", "Chris" ] }