Mongo Aggregaton不会仅返回部分结果的全部结果

时间:2019-01-11 16:28:28

标签: mongodb aggregation-framework resultset

有人可以告诉我这个简单的聚合命令中的问题是什么吗?

db.test.aggregate([
    {
         $group: {
             _id: "$type",
             numbers: { $sum: 1 }
         } 
    }
]).pretty()

集合有大约200万个文档,每个人都有类型字段。但是结果只返回其中的少数几个作为结果+消息“ 键入“ it”以获取更多”。如果键入“ it”,它将返回下一个部分聚合结果,直到最后。但我想将整个聚合汇总到一个结果中。我究竟做错了什么? 谢谢。

1 个答案:

答案 0 :(得分:1)

由于MongoDB具有内置分页功能,因此不会返回全部数据。

在其他情况下(200万文档)会导致服务器/计算机内存不足崩溃。

但是,如果您想获取所有数据,最好使用脚本进行存储。
您可以使用编程语言编写脚本,请求db,对数据进行分页并存储在某些变量中。
Example