新增單一值至 MongoDB 集合中陣列的指令碼?


要僅向陣列新增單一值,請使用 $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"
         ]
      }
   }
}

更新於:31 年 3 月 2020 日

194 瀏覽

開啟你的 職業生涯

完成本課程以獲得認證

立即開始
廣告