我正试图达到这样的目的: 我有属于某个用户的活动集合。 我想通过'added_time'来命名活动名称,因此我在活动名称上使用'group by'并获得'added_time'的最大值。 此外,我想通过'added_time'对它们进行排序,然后获取整个文档。 到目前为止,我唯一能做的就是只获取我分组的名称和'added_time'属性。 这是查询:
db.getCollection('user_activities').aggregate
(
{$match: {'type': 'food', 'user_id': '123'}},
{$group:{'_id':'$name', 'added_time':{$max:'$added_time'}}},
{$sort:{'added_time':-1}},
{$project: {_id: 0,name: "$_id",count: 1,sum: 1, 'added_time': 1}}
)
有人可以帮助我完成整个文件吗? 感谢的!