【发布时间】:2020-09-23 13:24:21
【问题描述】:
我有包含用户活动数据(活动类型)的 MongoDB 集合,我想将活动分为两组并返回活动计数。
集合看起来像这样(还有一些其他字段,如日期等):
{"userID": 1, "activity": "reading"}
{"userID": 1, "activity": "sleeping"}
{"userID": 1, "activity": "hiking"}
{"userID": 1, "activity": "sleeping"}
{"userID": 1, "activity": "biking"}
我想做聚合,返回分组的多个活动的计数,例如。我想将“徒步旅行”和“骑自行车”归为“娱乐”,将“睡眠”和“阅读”归为“休息”,并且比指定用户自选定日期以来的活动计数:
"recreation": 2
"resting": 3
我所做的是匹配 userID 和 date $gte 以获取选定用户和期间的所有活动,尝试计数,$sum,$project,但无法使其按预期工作.
谢谢!
【问题讨论】:
标签: mongodb aggregation-framework