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

การฉายภาพอาร์เรย์เพื่อรับองค์ประกอบอาร์เรย์แรกจากเอกสาร MongoDB


หากคุณต้องการองค์ประกอบแรกจากอาร์เรย์ คุณสามารถใช้ $slice ร่วมกับ $gte ให้เราสร้างคอลเลกชันที่มีเอกสาร -

> db.demo640.insertOne({Name:"John","Scores":[80,90,75]});
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5e9c2eb86c954c74be91e6e0")
}
> db.demo640.insertOne({Name:"Chris","Scores":[85,70,89]});
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5e9c2ece6c954c74be91e6e1")
}

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

> db.demo640.find();

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

{ "_id" : ObjectId("5e9c2eb86c954c74be91e6e0"), "Name" : "John", "Scores" : [ 80, 90, 75 ] }
{ "_id" : ObjectId("5e9c2ece6c954c74be91e6e1"), "Name" : "Chris", "Scores" : [ 85, 70, 89 ] }

ต่อไปนี้เป็นแบบสอบถามเพื่อฉายอาร์เรย์โดยใช้ sing $slice -

> db.demo640.find({Scores:{$gte:85}},{ "Scores": {$slice : 1}});

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

{ "_id" : ObjectId("5e9c2eb86c954c74be91e6e0"), "Name" : "John", "Scores" : [ 80 ] }
{ "_id" : ObjectId("5e9c2ece6c954c74be91e6e1"), "Name" : "Chris", "Scores" : [ 85 ] }