【发布时间】:2015-11-15 21:14:56
【问题描述】:
集合名称:活动
我需要的是活动计数
“memberId”= 123
其中活动“类型”=“xxx”
每天
在“2015 年 11 月 1 日”和“2015 年 11 月 15 日”之间 // 从日期到日期范围
预期输出:
[
{日期:“2015-02-22”,计数:10},
{日期:“2015-02-22”,计数:5},
]
我不知道如何在日期和特定成员 ID 之间执行聚合
我所在的位置与解决方案相去甚远:
db.activity.aggregate(
{ $project: {
date: {
years: {$year: '$dateInserted'},
months: {$month: '$dateInserted'},
days: {$dayOfMonth: '$dateInserted'},
},
memberId: '$memberId'
}},
{ $group: {
_id: { memberId: '$memberId', date: '$date' },
number: { $sum: 1}
}})
【问题讨论】:
-
您能否edit您的问题包括一些示例文档和预期输出?
-
试图在 mongolab 上创建一个虚拟数据库,但 mongolab 面临集合结构为 {memberId:1,item:"text",dateInserted:"2015-02-22 02:46:31.225Z 的问题"},预期输出是值数组,如每天的活动,如 [{date:"2015-02-22 02:46:31.225Z",count:10}] 用于图表
标签: mongodb mongoose mongodb-query