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

ผลักและหั่นหลาย ๆ ครั้งใน MongoDB?


ในการพุชและสไลซ์ใน MongoDB ให้ใช้ $push และ $slice ให้เราสร้างคอลเลกชันที่มีเอกสาร -

> db.demo656.insertOne({Name:"John"});
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5ea060264deddd72997713cf")
}

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

> db.demo656.find();

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

{ "_id" : ObjectId("5ea060264deddd72997713cf"), "Name" : "John" }

นี่คือแบบสอบถามที่จะผลักและแบ่งใน MongoDB−

> db.demo656.update({Name:"John"}, {"$push":{"ListOfName": {"$each": ["John"], "$slice": -9}}});
WriteResult({ "nMatched" : 1, "nUpserted" : 0, "nModified" : 1 })

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

> db.demo656.find();

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

{ "_id" : ObjectId("5ea060264deddd72997713cf"), "Name" : "John", "ListOfName" : [ "John" ] }

ต่อไปนี้เป็นแบบสอบถามที่จะผลักดันและแบ่งอีกครั้ง -

> db.demo656.update({Name:"John"}, {"$push":{"ListOfName": {"$each": ["David"], "$slice": -9}}});
WriteResult({ "nMatched" : 1, "nUpserted" : 0, "nModified" : 1 })

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

> db.demo656.find();

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

{ "_id" : ObjectId("5ea060264deddd72997713cf"), "Name" : "John", "ListOfName" : [ "John", "David" ] }