Я использую этот конвейер агрегации около шести месяцев:
[
{
$group: {
_id: { $isoWeek: "$createdAt" },
count: { $sum: 1 },
fonte: { $push: "$source" },
appointments: { $push: "$appointment" }
}
},
{
$addFields: { week: "$_id" }
},
{
$project: { _id: 0 }
},
{
$limit: 2
}
]
Теперь он выбирает случайные недели, поскольку прошло два года.
Решение кажется простым, но я не могу обернуть свое Обдумайте это, я уже потратил слишком много времени на это.
Я пробовал несколько группировок, но безрезультатно.
Ожидаемый результат состоит в том, чтобы получить ценность за последние две недели данные (производственная статистика), которые затем обрабатываются в обычном режиме js и отображаются в CRM.
Редактировать
Текущий результат:
[
{
count: 13,
fonte: [
'casalugano.ch', 'homegate.ch',
'casalugano.ch', 'homegate.ch',
'tutti.ch', 'homegate.ch',
'homegate.ch', 'casalugano.ch',
'tutti.ch', 'homegate.ch',
'homegate.ch', 'homegate.ch',
'homegate.ch'
],
appointments: [],
week: 1
},
{
count: 5,
fonte: [
'casalugano.ch',
'homegate.ch',
'tutti.ch',
'homegate.ch',
'homegate.ch'
],
appointments: [],
week: 52
}
]
Ожидаемым результатом будет получение данных подарок неделя и данных последняя неделя (неделя 2 и 1).