У меня есть коллекция, которая содержит документ, такой как:
{ _id: ObjectID(), userName: "aa", amount: 50, date: 1561119425317 }
Значения, которые у меня есть для запроса: timeStamp1 и timeStamp2.
Я хочу сумму суммы, сгруппированной по userName, тогда запрос для этого будет
db.collection.aggregate([
{$match: {date: {$gte: timeStamp1, $lte: timeStamp2}},
{$group: {"_id" : "$userName", total:{"$sum" : "$amount"}}}
])
Я хочу получить результат в таких частях, как если бы я разбил интервал timeStamp1 на timeStamp2 в 5 частях, а затем я хочу получить одинаковый результат для каждого интервала.
Как я могу это сделать, не выполняя вышеуказанный запрос 5 раз (по одному на каждый интервал).
Потому что в будущем число интервалов может увеличиться до 30 или 40.