讓 MongoDB 用字串替換單個數組值?


使用 $set 和 positional($) 運算子進行替換。我們用文件建立一個集合 -

> db.demo564.insertOne({"StudentName":["Chris","David","Mike","Sam"]});{
   "acknowledged" : true, "insertedId" : ObjectId("5e90880a39cfeaaf0b97b576")
}

藉助 find() 方法顯示集合中的所有文件 -

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

這會生成以下輸出 -

{
   "_id" : ObjectId("5e90880a39cfeaaf0b97b576"),
   "StudentName" : [
      "Chris",
      "David",
      "Mike",
      "Sam"
   ]
}

以下是用字串替換單個數組值的查詢 -

> db.demo564.updateMany(
...    { "StudentName": "David" },
...    { "$set": { "StudentName.$": "Carol Taylor" } }
... )
{ "acknowledged" : true, "matchedCount" : 1, "modifiedCount" : 1 }
>

藉助 find() 方法顯示集合中的所有文件 -

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

這會生成以下輸出 -

{
   "_id" : ObjectId("5e90880a39cfeaaf0b97b576"),
   "StudentName" : [
      "Chris",
      "Carol Taylor",
      "Mike",
      "Sam"
   ]
}

更新於: 14-5-2020

581 次瀏覽

啟動您的事業

完成課程獲得認證

開始
廣告
© . All rights reserved.