我希望为Transactions集合创建Meteor响应式聚合。
Transactions具有日期,因此我想按月份聚合数据。
代码如下:
ReactiveAggregate(this, Transactions, [
{
$match: {
'date': {
$gte: new Date(startDate),
$lt: new Date(endDate)
}
}
},
{
'$group' :
{
'_id' : { month: { $month: "$date" }},
'totalProfit': { $sum: "$totalProfit"},
'totalSales': { $sum: "$totalSales" },
'totalExpenses': { $sum: "$totalExpenses" },
count: { $sum: 1 }
}
},
{
'$project':{
date: '$date',
totalProfit: '$totalProfit',
totalSales: '$totalSales',
totalExpenses: '$totalExpenses',
}
}
], { clientCollection: "report3MonthsTransactions" });
});
当我执行此操作时,会提示错误:
错误:Meteor目前不支持除ObjectID以外的其他对象作为id
谢谢!
_id: { $month: "$date" }
吗? - MasterAM