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

MongoDB - จะตรวจสอบความเท่าเทียมกันในคอลเล็กชันและในเอกสารที่ฝังได้อย่างไร


สำหรับสิ่งนี้ ให้ตรวจสอบโดยใช้ $where ใน MongoDB ให้เราสร้างคอลเลกชันที่มีเอกสาร -

> db.demo292.insertOne({FirstName:"Chris",LastName:"Brown",
...   "Friend":{FirstName:"David","LastName":"Miller"}
...   }
...);
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5e4c10aa5d93261e4bc9ea30")
}
> db.demo292.insertOne({FirstName:"John",LastName:"Doe",
...   "Friend":{FirstName:"Mike","LastName":"Doe"}
...}
...);
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5e4c10dc5d93261e4bc9ea31")
}

แสดงเอกสารทั้งหมดจากคอลเล็กชันโดยใช้วิธี find() -

>  db.demo292.find();

สิ่งนี้จะสร้างผลลัพธ์ต่อไปนี้ -

{ "_id" : ObjectId("5e4c10aa5d93261e4bc9ea30"), "FirstName" : "Chris", "LastName" : "Brown", "Friend" : { "FirstName" : "David", "LastName" : "Miller" } }
{ "_id" : ObjectId("5e4c10dc5d93261e4bc9ea31"), "FirstName" : "John", "LastName" : "Doe", "Friend" : { "FirstName" : "Mike", "LastName" : "Doe" } }

ต่อไปนี้เป็นคำถามเพื่อตรวจสอบความเท่าเทียมกันในการรวบรวมและในเอกสารที่ฝัง -

> db.demo292.find({$where: 'this.Friend.LastName === this.LastName'})

สิ่งนี้จะสร้างผลลัพธ์ต่อไปนี้ -

{ "_id" : ObjectId("5e4c10dc5d93261e4bc9ea31"), "FirstName" : "John", "LastName" : "Doe", "Friend" : { "FirstName" : "Mike", "LastName" : "Doe" } }