[英]MongoDB - Delete item in nested array
我看到了很多關於此的類似問題,但無法使其在我的收藏中發揮作用。
如何刪除特定評論(您可以假設我知道 userId)。
例如,我想刪除帶有commentId=3
的評論,並且我知道它在userId=1
下。
[
{
userId: "1",
posts: [
{
postId: "2",
comments: [
{
commentId: "3",
...
},
...
]
},
...
]
},
...
]
謝謝!
這適用於 Mongodb 4.2,如果它與“commentId”3 匹配,將從“comments”中刪除第一個數組條目
db.posts.update(
{"userId" : "1"},
{$pull : {"posts.$[].comments" : {"commentId":"3"}}}
)
如果您想刪除所有數組條目,請使用:
db.posts.update(
{"userId" : "1"},
{$pull : {"posts.$[].comments" : {"commentId":"3"}}},
{"multi": true}
)
您是否嘗試過使用deleteOne()
function? 嘗試查看 MongoDb 文檔。 MongoDb 文檔
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.