Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/python-2.7/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
MongoDB如何删除嵌入式阵列中的字段?_Mongodb_Python 2.7 - Fatal编程技术网

MongoDB如何删除嵌入式阵列中的字段?

MongoDB如何删除嵌入式阵列中的字段?,mongodb,python-2.7,Mongodb,Python 2.7,我想删除字典数组中的一个字段 我知道如何删除法线字段: {$unset:{::} 但请帮我举一个下面的例子,我想删除第二个dict中的status字段 { "recs":[ { "required_1":"" "required_2":"info", "status":&

我想删除字典数组中的一个字段

我知道如何删除法线字段: {$unset:{::}

但请帮我举一个下面的例子,我想删除第二个dict中的status字段

{  
    "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"
}

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


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


必须使用$pull从阵列中删除数据

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

必须使用$pull从阵列中删除数据

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

仅在第二条记录内,而不是第一条记录?是的,我想从第二条记录中删除。如果状态为“正在进行”,则我想删除,该状态仅存在于第二条记录中。可能的副本仅在第二条记录内,而不是第一条记录?是的,我想从第二条记录中删除。如果状态为“正在进行”,则我想删除只有在第二条记录中才有可能的副本