2012-07-25 160 views
2

我需要知道我们如何将数据或记录从MongoDB中的一个集合传输到另一个集合,同时我们是否可以使用“find()”条件传输数据一个到另一个集合。MongoDB - 将数据集合传输到另一个集合

如果知道,请分享我们的参考资料。

注:

以下错误,我们正在如果使用PHP从大集合(有这个集合中的行数)获取的记录。

错误:“为排序的数据太多(),没有索引错误”

这就是为什么我们已经讨论并通过使用MongoDB的控制台从一个收集的数据传输到另一个集合。

  • 库马兰

回答

4

首先,我建议建立在无论你是在如果可能的话运行您find()查询的索引,你可以通过使用ensureIndex() ...

至于如何从控制台传输文件:

> use source_database; 
> var docs = db.source_collection.find({ something: 'foo' }); 
> use new_database; 
> docs.forEach(function(doc) { db.new_collection.insert(doc) }); 

欲了解更多信息,请查看此blog post,这更详细地解释过程。

2

您可以直接蒙戈做到这一点:

db.source.find(some_conditions).forEach(function(doc){db.dest.save(doc)}) 
相关问题