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

แบบสอบถาม MongoDB เพื่อส่งเอกสารลงในอาร์เรย์


ในการพุชเอกสารลงในอาร์เรย์ ให้ใช้ $push พร้อมกับ update() ให้เราสร้างคอลเลกชันที่มีเอกสาร -

>db.demo310.insertOne({"Name":"Chris","details":[{"Id":101,"Subject":"MySQL"},{"Id":102,"Subject":"MongoDB"}]});
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5e50cabdf8647eb59e562043")
}

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

> db.demo310.find();

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

{
   "_id" : ObjectId("5e50cabdf8647eb59e562043"), "Name" : "Chris", "details" : [
      { "Id" : 101, "Subject" : "MySQL" }, { "Id" : 102, "Subject" : "MongoDB" }
   ]
}

ต่อไปนี้เป็นแบบสอบถามเพื่อผลักดันเอกสาร -

> db.demo310.update({ _id:ObjectId("5e50cabdf8647eb59e562043")},
...{ $push: {"details": {
...   "Id" : 103,
...   "Subject": "Java"
...   }}
...}
...)
WriteResult({ "nMatched" : 1, "nUpserted" : 0, "nModified" : 1 })

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

> db.demo310.find();

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

{
   "_id" : ObjectId("5e50cabdf8647eb59e562043"), "Name" : "Chris", "details" : [
      { "Id" : 101, "Subject" : "MySQL" }, { "Id" : 102, "Subject" : "MongoDB" },
      { "Id" : 103, "Subject" : "Java" }
   ] 
}