本文介绍了在 sequelize 中查找总和和分组的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我有一个如下的捐款表.
I have a donations table as follows.
捐款表
| id| amount | member_id |
|---|--------|-----------|
| 0 | 500 | 01|
| 1 | 1000 | 02|
| 2 | 2000 | 01|
如何查找 sum 并按成员 id 对表进行分组,如下所示.
How to find sum and group the table by member id as follows.
| amount | member_id |
|--------|-----------|
| 2500 | 01|
| 1000 | 02|
我尝试使用以下代码,但它似乎不起作用.
I tried to use the following code but it doesnt seem to work.
const salesValue = await DONATIONS.sum('amount', {
group: 'member_id'
});
推荐答案
您必须使用 sequelize.fn
进行聚合.要定位金额列,您必须使用 sequelize.col
并将它们分组,您必须传递 group
选项.
You have to do an aggregation using sequelize.fn
. To target the amount column you have to use sequelize.col
and to group them you have to pass the group
option.
const totalAmount = await DONATIONS.findAll({
attributes: [
'member_id',
[sequelize.fn('sum', sequelize.col('amount')), 'total_amount'],
],
group: ['member_id'],
});
这篇关于在 sequelize 中查找总和和分组的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持编程学习网!
本站部分内容来源互联网,如果有图片或者内容侵犯您的权益请联系我们删除!