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

การดึงค่าอาร์เรย์จากการค้นหาแบบสอบถามในฐานข้อมูล MongoDB


ในการดึงค่าอาร์เรย์จากการค้นหา ให้ใช้เครื่องหมายจุด ให้เราสร้างคอลเลกชันที่มีเอกสาร -

> db.demo38.insertOne({"ClientDetails":[{"ClientId":101,"ClientName":"Chris"}]});
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5e176abccfb11e5c34d898d9")
}
> db.demo38.insertOne({"ClientDetails":[{"ClientId":102,"ClientName":"David"}]});
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5e176ac7cfb11e5c34d898da")
}
> db.demo38.insertOne({"ClientDetails":[{"ClientId":103,"ClientName":"Mike"}]});
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5e176ad0cfb11e5c34d898db")
}

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

> db.demo38.find();

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

{ "_id" : ObjectId("5e176abccfb11e5c34d898d9"), "ClientDetails" : [ { "ClientId" : 101, "ClientName" : "Chris" } ] }
{ "_id" : ObjectId("5e176ac7cfb11e5c34d898da"), "ClientDetails" : [ { "ClientId" : 102, "ClientName" : "David" } ] }
{ "_id" : ObjectId("5e176ad0cfb11e5c34d898db"), "ClientDetails" : [ { "ClientId" : 103, "ClientName" : "Mike" } ] }

ต่อไปนี้เป็นแบบสอบถามเพื่อดึงค่าอาร์เรย์จากการค้นหาแบบสอบถาม -

> db.demo38.find({"ClientDetails.ClientName":"David"});

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

{ "_id" : ObjectId("5e176ac7cfb11e5c34d898da"), "ClientDetails" : [ { "ClientId" : 102, "ClientName" : "David" } ] }