Предположим, у меня есть следующее:
{'start': '2011-01-29',
'target': 0.0,
'cat': [0, 0, 0, 0, 0],
'state': 0},
{'start': '2011-01-25',
'target': 1.0,
'cat': [0, 1, 0, 3, 0],
'state': 0},
{'start': '2011-01-29',
'target': 1.0,
'cat': [0, 0, 0, 0, 0],
'state': 0}
Мне нужно сгруппировать эту коллекцию по штатам, чтобы получить:
- Самая старая
start
дата - Сумма
Target
- Массив
cat
, где самая старая дата.
Использование:
{
"$group": {
"_id": { "state": "$state",
},
"sum": { "$sum": "$target" },
"start": { "$min": "$start" },
"cat": {"$first": "$cat"}
}
}
Я могу получить:
Самая старая start
дата
Сумма Target
Однако я могу Не получается:
- Массив
cat
, где самая старая дата.
Мой желаемый вывод:
{'start': '2011-01-25',
'target': 2.0,
'cat': [0, 1, 0, 3, 0],
'state': 0},