【问题标题】:How to use GROUP BY YEAR(created_at) in sequelize如何在 sequelize 中使用 GROUP BY YEAR(created_at)
【发布时间】:2023-02-26 07:12:36
【问题描述】:
如何使用 group by in续集对于 mysql按年分组(创建于)
我正在尝试这样做,但它显示错误
const result = await arbcase.findAll({
attributes: [[arbcase.sequelize.literal(`COUNT(*)`), "count"]],
group: ["YEAR(created_at)"],
});
错误sqlMessage: “‘组语句’中的未知列‘YEAR(created_at)’”,
'SELECT COUNT(*) AS count FROM arbcase AS arbcase GROUP BY YEAR(created_at);'
【问题讨论】:
标签:
javascript
mysql
node.js
sequelize.js
【解决方案1】:
const result = await arbcase.findAll({
attributes: [
"created_at",
[arbcase.sequelize.literal(`COUNT(*)`), "count"],
],
group: [
arbcase.sequelize.fn("YEAR", arbcase.sequelize.col("created_at")),
arbcase.sequelize.fn("MONTH", arbcase.sequelize.col("created_at")),
],
// SELECT created_at ,count(*) FROM `arbcase` GROUP BY YEAR(created_at), MONTH(created_at) ASC
});
这段代码对我有用
__your__mode__name__.sequelize.col("created_at"))
Sequelize中mwsql中的每一个函数都使用这个函数