sequelize mysql group 查询获各分组最后一条

sequlize通过聚合查询:

const res = await ctx.mode.Record.findAndCountAll({
    order: [['createdAt', 'DESC']],
    group: ['message']
})

但结果是每个组个的第一条,怎么设置才会让group取最后一条呢?

查了下mysql 是 先把数据排序,再查询group。

sequelize不知道怎么?

阅读 4k
1 个回答
const res = await ctx.mode.Record.findAndCountAll({
    order: [[sequelize.fn('max', sequelize.col('createdAt')), 'DESC'],],
    group: ['message']
})
撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题