我正在使用聚合管道,如果我的源是字符串,在它快速返回匹配项后,总和会变慢。如果是对象或日期,则速度非常快。
这是我的代码:
feed.aggregate([
{"$match": {"group_id": group.id , "date" : {"$gte": start_date, "$lte": end_date}}},
{"$group": {"_id": {"source": "$source"}, "count": {"$sum": 1}}}
])
如果我这样做,我对速度没有任何问题。
feed.aggregate([
{"$match": {"group_id": group.id , "date" : {"$gte": start_date, "$lte": end_date}}},
{"$group": {"_id": {"source": "$date"}, "count": {"$sum": 1}}}
])