Open FS1360472174 opened 7 years ago
total 与result一起返回,减少一次查询
{
"$group":{
_id:null,
total:{$sum:1},
data:{$addToSet:'$tmp'}}
},]
如果需要limit,需要将data这个数组拆开
这样的查询必须要将所有数据加载到内存了。不是很高校,不如查两次 https://stackoverflow.com/questions/20348093/mongodb-aggregation-how-to-get-total-records-count
"memUsage" : 43951, "memLimit" : 33554432,
https://docs.mongodb.com/v3.2/reference/operator/aggregation/sort/
这篇文章说内存排序是从2.6后是10%RAM 到100M。但是实际上在3.4中还是32M限制。
对于sort后面有limit的,mongo从2.4开始只会加载 limit条数据到内存中, skip的时候会做+