我有Documents
哪个有另一个的引用键Document
。是否可以一次性删除所有引用该字段的文档?
现在,我会db.collection.remove(<query for the reference>)
在每个集合中使用并运行它,但这似乎根本没有效率。
我想要做的是使用一个可以遍历所有文档的删除查询。我在 RoboMongo 中使用命令提示符。
第一个问题的答案是肯定的,你可以做到。
你怎么做: 如果你想执行这样的操作,你可以编写一个小的 mongoDB 脚本。了解有关 mongo shell 脚本的更多信息
您的帖子的解决方案可能是这样的脚本:
cursor = db.collection.find();
while ( cursor.hasNext() ) {
// Compare the two keys and remove the appropriate document
}
如果您必须自动化操作,MongoDB Shell 脚本是一个很好的解决方案。