如何从mongodb文档中的数组中删除字符串?

时间:2015-08-14 05:11:59

标签: mongodb

我一直遇到从mongodb文档中删除数组中字符串的问题。例如,我想从下面的文档中的列表字段中删除条目“4”。

{
  "list" : [ "1", "2", "four", "five", "6"]
}

我知道这看起来很简单,但我无法从文档或之前的问题中找到直接的答案。我已经尝试了5个左右的命令,无法使用db.collection.update结合$ pull和$ mod修饰符。有什么帮助吗?

我知道,非常基本的问题。

1 个答案:

答案 0 :(得分:5)

您可以使用$Pull运算符,请尝试以下查询:

db.collection.update(
                      { _id : id },
                      { $pull: 
                             { "list":"four" }
                      }
                     );

如果你想从arry“list”中删除两个或多个元素,你也可以使用$ Pull运算符:

db.collection.update( { _id : id },
                      { $pull: 
                              { list : 
                                      { $in : [ "one", "four" ] }
                              }
                       }
                     );