You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在Sequelize中编写按年龄分组统计志愿者ID数量的查询?

实现指定分组统计的Sequelize查询

对应你需要的SQL功能,这里提供两种Sequelize实现方式:

方式一:使用模型查询(推荐)

假设你的Sequelize模型名为 RedCrossVolunteer(对应表 red_cross_volunteers),代码如下:

const { sequelize } = require('./your-sequelize-config'); // 引入你的Sequelize实例
const RedCrossVolunteer = require('./models/RedCrossVolunteer'); // 引入模型

const stats = await RedCrossVolunteer.findAll({
  attributes: [
    'age',
    // 调用COUNT函数统计id数量,指定别名count_id
    [sequelize.fn('COUNT', sequelize.col('id')), 'count_id']
  ],
  // 按age字段分组
  group: ['age']
});

方式二:使用原始SQL查询

如果更习惯直接写SQL,也可以用原始查询方式:

const { sequelize } = require('./your-sequelize-config');

const stats = await sequelize.query(
  'SELECT COUNT(id) AS count_id, age FROM red_cross_volunteers GROUP BY age',
  { type: sequelize.QueryTypes.SELECT }
);

说明

  • 两种方式都会返回按年龄分组的统计结果,每条数据包含age和count_id(对应SQL里的COUNT(id))
  • 模型查询方式更符合Sequelize的ORM风格,能自动处理数据映射

内容的提问来源于stack exchange,提问作者xkeedev

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.15 23:21:08