[
{
date: ISODate(2017-12-09T21:00:00.000Z),
items: [
{
title: 'Title1',
price: 500
},
{
title: 'Title2',
price: 500
}
]
},
{
date: ISODate(2017-12-07T21:00:00.000Z)
items: [
{
title: 'Title3',
price: 500
},
{
title: 'Title1',
price: 500
}
]
},
{
date: ISODate(2017-06-09T21:00:00.000Z),
items: [
{
title: 'Title1',
price: 500
},
{
title: 'Title2',
price: 500
}
]
},
{
date: ISODate(2017-01-08T21:00:00.000Z),
items: [
{
title: 'Title2',
price: 500
},
{
title: 'Title3',
price: 500
}
]
}
]
[
{
date: {
month: 12,
year: 2017
},
items: [
{
title: 'Title1',
price: 1000
},
{
title: 'Title2',
price: 500
},
{
title: 'Title3',
price: 500
}
]
},
{
date: {
month: 06,
year: 2017
},
items: [
{
title: 'Title1',
price: 500
},
{
title: 'Title2',
price: 500
}
]
},
{
date: {
month: 01,
year: 2017
},
items: [
{
title: 'Title2',
price: 500
},
{
title: 'Title3',
price: 500
}
]
}
]
[
{
'$match': {}
},
{
$project: {
date: 1,
items: 1
}
},
{
$unwind: {
path: '$items'
}
},
{
$group: {
_id : {
month: { $month: '$date' },
year: { $year: '$date' }
},
items: {
$addToSet: {
title: '$items.title',
price: {$sum: '$items.price'}
}
}
}
}
]