我是 MongoDB 的新手。所以请指导我解决这个问题。我有一个文档集合,想从集合中删除不必要的字段。有没有自动化的方法?我知道我可以使用$unset但似乎如果我想删除许多字段,那么我必须对每个字段重复此操作,对吗?我发现我可以根据这个使用 ruby 来做到这一点,但是如果不是删除所有字段而是删除其中一些字段呢?
问问题
102 次
有了$unset
您,您将能够一次删除(任意)许多字段。与多重更新一起,您将获得类似于自动化方法的东西。所以只删除一些字段让我们考虑这个示例文档:{_id:OID, a: { b: 2, c: 3}, d : [1,2]}
你可以使用这个:$unset : {"a.b" : 1, d : 1}
删除a中的嵌套元素b,以及数组d。
如果您只想删除数组的某些项目,我相信您必须使用位置运算符,但我没有使用它。