【问题标题】:How can I unset a value within a nested array of objects? MongoDB [duplicate]如何取消设置嵌套对象数组中的值? MongoDB [重复]
【发布时间】:2019-11-26 19:09:25
【问题描述】:

您如何取消设置值,例如治疗、喜好或疾病? 我试过了

db.myCollection.update({first_name:"QQQ"},{$unset:{"history.treatment":1}});

它会找到匹配项,但不会取消设置。我做错了什么?

我的收藏:

 { first_name: "QQQ",
last_name: "BBBB",

"history" : [
                {
                        "disease" : [
                                "X",
                                "Y",
                                "Z"
                        ],
                        "treatment" : "No treatment",
                        "likes" : "french fries"
                }
        ]}

【问题讨论】:

    标签: mongodb


    【解决方案1】:

    Treatement 嵌套在history array 中,所以你需要使用$[] 位置运算符

    db.myCollection.update({first_name:"QQQ"},{$unset:{"history.$[].treatment":1}});
    

    【讨论】:

    • 谢谢!是的!我看到了数组,但我真的不知道如何访问它!再次感谢!
    猜你喜欢
    • 1970-01-01
    • 2018-11-07
    • 1970-01-01
    • 2020-11-08
    • 1970-01-01
    • 2018-04-12
    • 2018-04-21
    • 1970-01-01
    • 2023-01-12
    相关资源
    最近更新 更多