mongodb如何删除嵌入式数组中的字段



我有一个我想在字典中删除字段的情况。

我知道如何删除普通字段:{$ unset:{:" quot;}}}

但是请帮助我获取以下示例,我想删除 status 在第二个dict

{  
    "recs":[  
        {  
            "required_1":""
            "required_2":"info",
            "status":"completed",
            "datetime":"2018-02-02T06:00:04Z"
        },
        {  
            "required_1":""
            "required_2":"info",
            "status":"inprogress"
            "datetime":"2018-02-02T06:00:04Z"         
        }
    ],
    "mainstatus":"failed"
}

您必须使用$符号:recs.$.status将选择recs中所有记录的status字段。

https://docs.mongodb.com/manual/reference/operator/update/positional/

您必须使用$拉动以从数组中删除数据。

db.getCollection('TEST').update({/* some condition */}, {
    $pull: {
        recs: {"status" : "inprogress"}
    }
});

最新更新