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

วิธีแสดงค่าสุดท้าย 2 ค่าจากฟิลด์อาร์เรย์ใน MongoDB

ใช้ตัวดำเนินการ $slice พร้อมค่าติดลบ เพื่อดึงค่าจากท้ายอาร์เรย์ เริ่มต้นด้วยการสร้างคอลเลกชันตัวอย่าง:

> db.numberOfValuesDemo.insertOne({"Values":[100,200,300,900,1000,98]});
{ "acknowledged" : true, "insertedId" : ObjectId("5cefb736ef71edecf6a1f6ab") }

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

> db.numberOfValuesDemo.find().pretty();
{ "_id" : ObjectId("5cefb736ef71edecf6a1f6ab"), "Values" : [ 100, 200, 300, 900, 1000, 98 ] }

คิวรี่ดึง 2 ค่าสุดท้ายจากอาร์เรย์ Values (ใช้ค่าติดลบ -2):

> db.numberOfValuesDemo.find({},{ "Values": { "$slice": -2 } });

การใช้งาน $slice:

  • {$slice: 3} - ดึง 3 ค่าแรก
  • {$slice: -3} - ดึง 3 ค่าสุดท้าย
  • {$slice: [2, 4]} - ข้าม 2 ค่าแรก แล้วดึง 4 ค่าต่อไป