หากต้องการเพิ่มค่าเดียวในอาร์เรย์ ให้ใช้ $push ให้เราสร้างคอลเลกชันที่มีเอกสารก่อน -
> db.demo3.insertOne(
... {
... "Information" : {
... "Of" : {
... "StudentCode" : "STUDENT101",
... "StudentFavouriteSubject" : [
... "MySQL",
... "Java"
... ]
... }
... }
... }
... );
{
"acknowledged" : true,
"insertedId" : ObjectId("5e08b7ef25ddae1f53b6221b")
} ต่อไปนี้เป็นแบบสอบถามเพื่อแสดงเอกสารทั้งหมดจากคอลเลกชันโดยใช้วิธี find() -
> db.demo3.find();
สิ่งนี้จะสร้างผลลัพธ์ต่อไปนี้ -
{ "_id" : ObjectId("5e08b7ef25ddae1f53b6221b"), "Information" : { "Of" : { "StudentCode" : "STUDENT101", "StudentFavouriteSubject" : [ "MySQL", "Java" ] } } } นี่คือแบบสอบถามเพื่อเพิ่มเพียงค่าเดียวให้กับอาร์เรย์ใน MongoDB -
> db.demo3.update({},{$push:{"Information.Of.StudentFavouriteSubject":"Spring and Hibernate"}});
WriteResult({ "nMatched" : 1, "nUpserted" : 0, "nModified" : 1 }) ให้เราตรวจสอบเอกสารทั้งหมดอีกครั้ง -
> db.demo3.find().pretty();
สิ่งนี้จะสร้างผลลัพธ์ต่อไปนี้ -
{
"_id" : ObjectId("5e08b7ef25ddae1f53b6221b"),
"Information" : {
"Of" : {
"StudentCode" : "STUDENT101",
"StudentFavouriteSubject" : [
"MySQL",
"Java",
"Spring and Hibernate"
]
}
}
}