在我的猫鼬模型中,我有一个与帐户对象相关的invoiceHeader和invoiceLine集合。 在视图中,我想显示帐户的invoiceAmount总额。 在SQL中类似于来自invoiceHeader group by account的sum sum(amount)。 我如何实现与nodeJS和mongoose类似?
答案 0 :(得分:0)
假设amount
是您想要求和的属性,它就像:
InvoiceHeaderModel.aggregate({
$match: {
account: '<Account_ID>'
}
}, {
$group: {
_id: null,
total: {
$sum: "$amount"
}
}
}, {
$project: {
_id: 0,
total: 1
}
}, function(err, res) {
// res contains the result
});
$match
运算符用于匹配某些文档。 $group
运算符用于对文档进行分组。 $project
运算符用于从文档中选择某些字段。