我一直遇到从mongodb文档中删除数组中字符串的问题。例如,我想从下面的文档中的列表字段中删除条目“4”。
{
"list" : [ "1", "2", "four", "five", "6"]
}
我知道这看起来很简单,但我无法从文档或之前的问题中找到直接的答案。我已经尝试了5个左右的命令,无法使用db.collection.update结合$ pull和$ mod修饰符。有什么帮助吗?
我知道,非常基本的问题。
答案 0 :(得分:5)
您可以使用$Pull运算符,请尝试以下查询:
db.collection.update(
{ _id : id },
{ $pull:
{ "list":"four" }
}
);
如果你想从arry“list”中删除两个或多个元素,你也可以使用$ Pull运算符:
db.collection.update( { _id : id },
{ $pull:
{ list :
{ $in : [ "one", "four" ] }
}
}
);