我有一种情况,我想删除字典数组中的字段。
我知道如何删除普通字段: {$ unset:{:""}}
但请帮助我以下示例,我想删除第二个字典中的状态字段
{
"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"
}
答案 0 :(得分:0)
您必须使用$
符号:recs.$.status
将选择status
中所有记录的recs
字段。
https://docs.mongodb.com/manual/reference/operator/update/positional/
答案 1 :(得分:-1)
您必须使用$ pull从数组中删除数据。
db.getCollection('TEST').update({/* some condition */}, {
$pull: {
recs: {"status" : "inprogress"}
}
});