MongoDB:使用$push 將資料加入巢狀陣列
在MongoDB 中,您可以儲存複雜的資料結構,例如嵌套數組。當您需要為這些陣列新增元素時,可以使用 $push 運算子。
問題:
您想要在一個文件內新增新元素。您的文件在播放清單中包含嵌套的音樂曲目陣列。您想要將新曲目新增至現有播放清單。
範例文件:
{ "username": "erkin", "email": "example@email.com", "password": "b", "playlists": [ { "_id": 58, "name": "asdsa", "date": "09-01-15", "musics": [ { "name": "INNA - Cola Song (feat. J Balvin)", "duration": "3.00" } ] } ] }
所需結果:
{ "username": "erkin", "email": "example@email.com", "password": "b", "playlists": [ { "_id": 58, "name": "asdsa", "date": "09-01-15", "musics": [ { "name": "INNA - Cola Song (feat. J Balvin)", "duration": "3.00" }, { "name": "new", "duration": "3.00" } ] } ] }
解決方案:
要將新項目新增至音樂子數組,您可以使用以下更新查詢:
db.collection.update( { "_id": ID, "playlists._id": "58"}, { "$push": {"playlists.$.musics": { "name": "test name", "duration": "4.00" } } } )
在此query:
以上是如何使用 $push 將新項目新增到 MongoDB 中的巢狀數組?的詳細內容。更多資訊請關注PHP中文網其他相關文章!