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