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

MongoDB สไลซ์อาร์เรย์ในฟิลด์ที่มีประชากร?


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

> db.demo503.insertOne({_id:1,Name:"John",Subject:["MySQL","Java","C"]});
{ "acknowledged" : true, "insertedId" : 1 }
> db.demo503.insertOne({_id:2,Name:"David",Subject:["MongoDB","C++","Python"]});
{ "acknowledged" : true, "insertedId" : 2 }

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

> db.demo503.find().pretty();

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

{ "_id" : 1, "Name" : "John", "Subject" : [ "MySQL", "Java", "C" ] }
{
   "_id" : 2,
   "Name" : "David",
   "Subject" : [
      "MongoDB",
      "C++",
      "Python"
   ]
}

ต่อไปนี้เป็นแบบสอบถามเพื่อแบ่งอาร์เรย์ในฟิลด์ที่มีประชากร -

> db.demo503.find({_id:2}, { 'Subject': { $slice: -1 }});

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

{ "_id" : 2, "Name" : "David", "Subject" : [ "Python" ] }