首頁 >後端開發 >php教程 >如何使用 $push 將資料新增至 MongoDB 中的巢狀數組?

如何使用 $push 將資料新增至 MongoDB 中的巢狀數組?

Linda Hamilton
Linda Hamilton原創
2024-12-26 05:52:42838瀏覽

How to Add Data to Nested Arrays in MongoDB using $push?

MongoDB:使用$push 將資料加入巢狀陣列

問題:

在MongoDB 中,您有一個文件嵌套數組(例如,“播放清單”內的“音樂”)。您想要在巢狀數組中插入新元素。

解決方案:

要使用$push 運算子將資料新增至巢狀數組,您可以按照以下步驟操作:

  • 在更新中使用「$push」運算子語句。
  • 使用適當的查詢(例如「_id」欄位)來識別要更新的文件。
  • 使用點表示法指定巢狀陣列(例如「playlists.musics」)。
  • 在「$push」運算子中,定義要插入為物件的新元素屬性值對(例如音樂物件的「名稱」和「持續時間」)。

    範例:

db.collection.update(
  { "_id": ObjectId("584654654ad21"), "playlists._id": 58 },
  { "$push": { "playlists.$.musics": { "name": "new name", "duration": "3.00" } } }
);

此查詢將更新_id 為「584654654ad21」的文件和_id 為58 透過將具有指定名稱和持續時間的新音樂物件加入到“musics”陣列中。

注意:「$push」運算子只能用於新增元素到陣列。它不能用於修改現有元素或在不存在的陣列中添加元素。

依照下列步驟,您可以有效地在 MongoDB 文件中的巢狀陣列中新增資料。

以上是如何使用 $push 將資料新增至 MongoDB 中的巢狀數組?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn