从文档中删除具有特定值的字段

时间:2018-10-18 08:27:08

标签: mongodb mongodb-query

假设我在一个具有以下数据的集合中有三个文档

{
    "_id" : ObjectId("5bc832db42756b4d38bba983"),
    "type" : "photo",    
    "severitylevel" : NumberLong(0),    
    "location" : {
        "loc" : {
            "lng" : 77.653322,
            "lat" : 13.06511
        }

}


{
    "_id" : ObjectId("5bc8338c42756b4d38bba9bb"),
    "type" : "text",    
    "severitylevel" : NumberLong(1),    
    "location" : {
        "loc" : {
            "lng" : 77.653322,
            "lat" : 13.06511
        }

}

{
    "_id" : ObjectId("5bc83d0c42756b8b3abba961"),
    "type" : "photo",    
    "severitylevel" : NumberLong(2),    
    "location" : {
        "loc" : {
            "lng" : 77.653322,
            "lat" : 13.06511
        }

}

现在,我只想在值等于0时才从文档中删除字段严重性级别,否则不使用查询。 关于如何做到这一点的任何建议

1 个答案:

答案 0 :(得分:0)

您可以使用$unset从文档中删除字段

db.collection.update({ severitylevel: 0 }, { $unset: { severitylevel: "" }})