Чтобы получить сумму столбца в Sequelize, вы можете использовать один из следующих методов:
Метод 1: использование sequelize.fnи sequelize.col:
const { sequelize, Sequelize } = require('sequelize');
ModelName.sum('columnName', {
where: {/* optional conditions */}
}).then(sum => {
console.log(sum);
});
Метод 2: использование sequelize.literal:
const { sequelize, Sequelize } = require('sequelize');
ModelName.findAll({
attributes: [
[sequelize.literal('SUM(columnName)'), 'sum']
],
where: {/* optional conditions */}
}).then(result => {
console.log(result[0].dataValues.sum);
});
Метод 3: использование sequelize.query:
const { sequelize, Sequelize } = require('sequelize');
sequelize.query('SELECT SUM(columnName) AS sum FROM tableName', {
type: Sequelize.QueryTypes.SELECT
}).then(result => {
console.log(result[0].sum);
});
Во всех этих методах замените ModelNameименем вашей модели Sequelize, columnNameименем столбца, который вы хотите суммировать, и tableNameс именем таблицы, содержащей столбец.