如何从mongodb文档中删除一个简单的嵌入文档

时间:2014-04-15 16:16:22

标签: mongodb

请考虑以下文档,其中包含名为subdoc的嵌套子文档:

{
    _id : 1,
    afield : 'value'
    subdoc: {
        _id : 1,
        field: 'abc'
    }
}

如何删除子文件?

此致 杰拉德

3 个答案:

答案 0 :(得分:0)

您可以使用$unset运算符删除该字段。

db.collection.update({queryhere},{$unset: {subdoc:1},{multi:true}}) 

答案 1 :(得分:0)

您可以使用$unset

db.collectionName.update(
    { 'subdoc': { '$exists': true } },   // check if exist 
    { '$unset': { 'subdoc': true  } },  // unset it 
    { 'multi': true }                    // Options for multiple doc 
)

答案 2 :(得分:0)

另一种解决方案可能是

db.collectionName.find().ForEach(function(d){

delete d.fieldName;
db.collectionName.save(d);

})