如何在 MongoDB 中拉出一個數組元素(即一個文件)?


可以使用 $pull 運算子。我們首先使用文件建立一個集合:

> db.pullAnArrayElementDemo.insertOne( { "StudentDetails": [ { "StudentFirstName":"Chris","StudentScore":56 }, {"StudentFirstName":"Robert","StudentScore":59 } ] } );
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5cd3b55bedc6604c74817cd5")
}

以下是使用 find() 方法顯示集合中所有文件的查詢:

> db.pullAnArrayElementDemo.find().pretty();

這會產生以下輸出:

{
   "_id" : ObjectId("5cd3b55bedc6604c74817cd5"),
   "StudentDetails" : [
      {
         "StudentFirstName" : "Chris",
         "StudentScore" : 56
      },
      {
         "StudentFirstName" : "Robert",
         "StudentScore" : 59
      }
   ]
}

以下是 MongoDB 中拉出一個數組元素(即一個文件)的查詢:

>db.pullAnArrayElementDemo.update({},{$pull:{'StudentDetails':{'StudentFirstName':'Chris'}}});
WriteResult({ "nMatched" : 1, "nUpserted" : 0, "nModified" : 1 })

讓我們再次顯示所有文件。查詢如下:

> db.pullAnArrayElementDemo.find().pretty();

這會產生以下輸出:

{
   "_id" : ObjectId("5cd3b55bedc6604c74817cd5"),
   "StudentDetails" : [
      {
         "StudentFirstName" : "Robert",
         "StudentScore" : 59
      }
   ]
}

更新於: 2019 年 7 月 30 日

182 次瀏覽

開啟您的 職業生涯

完成課程獲得認證

開始
廣告
© . All rights reserved.