我设法找到了如何删除字段,但我有一个问题它并没有真正删除它只是将它设置为NULL。
db.user.update({'username': 'mezo', 'person': {'$in' : ['masidnadi241479214']}}, {'$unset': {'person.$': 1}})
我的结构是这样的:
{
"_id" : ObjectId("4ff14c7461d69af811000000"),
"confirmed" : true,
"person" : [
null,
null,
"194724198274192",
"3"
],
"username" : "mezo"
}
答案 0 :(得分:1)
是的,这种行为是可以预期的。要从数组中删除null元素,请运行
db.collection.update(query, {$pull: {'person': null}})
在$ unset操作之后。