mongodb在查找结果时临时收集或聚合

mongodb在查找结果时临时收集或聚合,mongodb,Mongodb,我必须生成一个动态报告 我有一个复杂的查询,它使用db.collection.find()返回结果,其中有数百万条记录 现在我想对这个结果执行聚合操作 我尝试插入到集合中,然后使用以下命令对其执行聚合函数: db.users.find().forEach( function(myDoc) { db.usersDummy.insert(myDoc); } ); 但暂时插入数据然后对其执行聚合操作似乎是不可行的 mongoDB有没有办法支持临时表或直接对查找结果执行聚合操作?正如JohnnyHK建

我必须生成一个动态报告

我有一个复杂的查询,它使用db.collection.find()返回结果,其中有数百万条记录

现在我想对这个结果执行聚合操作

我尝试插入到集合中,然后使用以下命令对其执行聚合函数:

db.users.find().forEach( function(myDoc) { db.usersDummy.insert(myDoc); } );
但暂时插入数据然后对其执行聚合操作似乎是不可行的


mongoDB有没有办法支持临时表或直接对查找结果执行聚合操作?

正如JohnnyHK建议的那样,我在聚合中使用
$match
来运行庞大的集合,而不是创建虚拟集合


因此,结束这个问题

您通常只需将复杂的
查找
查询包含在
聚合
管道的初始
$match
阶段。你试过了吗?谢谢约翰尼,我试过给出的建议,效果很好。我是mongoDB的新手,并不知道这一点。谢谢你的帮助