我有这个数据集(两个对象数组):
我尝试过对每个数组字段进行($unwind and then $group)操作,但最终会创建重复的条目,并且总和相等。
_id字段需要是年份和月份:
_id:"PBea1d7ca5-5865-493b-bf05-40a9665de00a"
checkouts:Array
0:Object
date:2018-11-23 17:29:49.483
id:"CICOf3195baf-49b4-484e-ab39-03ab1f79ca04"
waitlist:Array
0:Object
date:2018-11-05 21:17:02.407
id:"WTL56ab268d-2929-493e-967b-5606d9473c18"
1:Object
date:2018-12-11 20:50:54.669
id:"WTL53bc7e6a-4f29-421e-a27a-37b1c1b28735"
2:Object
date:2018-12-14 20:25:17.451
id:"WTLd2efa095-cfe0-4e5e-b8bd-c369acd45306"
我需要按月份和年份对数组数据进行分组,结果将是该年份中每个月的两个文档。
_id:Object
id:"PBea1d7ca5-5865-493b-bf05-40a9665de00a"
month:11
year:2018
checkouts:1
waitlist:1
_id:Object
id:"PBea1d7ca5-5865-493b-bf05-40a9665de00a"
month:12
year:2018
checkouts:0
waitlist:2
我尝试过对每个数组字段进行($unwind and then $group)操作,但最终会创建重复的条目,并且总和相等。
_id字段需要是年份和月份:
_id: {id:'$_id', month:{$month:'$groupeddata.date'}, year:{$year:'$groupeddata.date'}}, 任何指针都会有所帮助。