如何在mongodb中删除文档中的特定数据

如何在mongodb中删除文档中的特定数据,mongodb,mongoid,mongodb-query,Mongodb,Mongoid,Mongodb Query,您好,下面是我在mongodb中的文档,现在我想删除数据 Kumar[]在给定的文档中,我使用了(更新pop)和删除函数。一个是删除内部数据,另一个是删除整个文档。如果您能帮助删除文档中所需的数据,我们将不胜感激 { “_id”:ObjectId(“537d98c2a8357030c4f46cc0”), “姓名”:“卡兰”, “地址”:“路政署”, “爱好”:[ “听音乐”, “国际象棋” ], “朋友”:[ { “satish”:“学校” }, { “纳雷什”:“学院” }, { “迪利普

您好,下面是我在mongodb中的文档,现在我想删除数据 Kumar[]在给定的文档中,我使用了(更新pop)和删除函数。一个是删除内部数据,另一个是删除整个文档。如果您能帮助删除文档中所需的数据,我们将不胜感激

{
“_id”:ObjectId(“537d98c2a8357030c4f46cc0”),
“姓名”:“卡兰”,
“地址”:“路政署”,
“爱好”:[
“听音乐”,
“国际象棋”
],
“朋友”:[
{
“satish”:“学校”
}, 
{
“纳雷什”:“学院”
}, 
{
“迪利普”:“学校”
}, 
{
“帕万”:“邻居”
}, 
{
“库马尔”:“办公室”
}
],
“库马尔”:[]
}
我尝试了以下查询

db.userdata.update({kumar:office},{$pull:{kumar:office})
删除({kumar:“office”},1)
在查询中结合使用运算符将文档与错误字段匹配:

db.userdata.update({“kumar”:{“$exists”:1},{“$unset”:{“kumar”:“}})

这将删除您在文档中显示的空数组。

等等,您是要删除数组还是删除数组中的数据?如果不确定,应始终检查您的查询是否与任何文档匹配。
db.userdata.find({kumar:“office”})
实际上不返回任何内容,因此部分更新无论如何都不会发生。@Neil Lunn的回答对其他所有内容都是正确的。