目前我有一系列日常记录,如下所示:
[{
date: 2017-03-01 (isoDate),
numItems: 12
},{
date: 2017-03-04 (isoDate),
numItems: 2
},{
date: 2017-03-05 (isoDate),
numItems: 4
},{
date: 2017-03-07 (isoDate),
numItems: 5
}]
mongo中是否有一种方法可以聚合记录,以便填写缺失的日期并将numItems
归零,以便返回:
[{
date: 2017-03-01 (isoDate),
numItems: 12
},{
date: 2017-03-02 (isoDate),
numItems: 0
},{
date: 2017-03-03 (isoDate),
numItems: 0
},{
date: 2017-03-04 (isoDate),
numItems: 2
},{
date: 2017-03-05 (isoDate),
numItems: 4
},{
date: 2017-03-06 (isoDate),
numItems: 0
},{
date: 2017-03-07 (isoDate),
numItems: 5
}]
或者,最好将其作为后期处理吗?
答案 0 :(得分:3)
是的,如果您使用Calendar Collection,即只是日期列表的帮助程序集合,您可以在数据库中执行此操作,无间隙。使用这样的日历集合,您可以组合一个聚合: