首页 > 解决方案 > 如何使用节点 js sequelize 和 postgresql 按月获取记录数

问题描述

我需要使用 Node Sequelize 和 PostgreSQL 统计每个月的记录。我检查了以下代码:

User.findAll({
    attributes: [[sequelize.fn('DATE_TRUNC', 'month', sequelize.col('createdAt')), 'month'], [sequelize.fn('COUNT', 'id'), 'totalCount']],
    where: queryCondSend,
    group: [sequelize.fn('date_trunc', 'month', sequelize.col('createdAt'))]
})

但输出就像

[
    {
        "month": "2021-02-01T00:00:00.000Z",
        "totalCount": "4"
    }
]

该计数仅在表中显示月份。对于没有任何记录的月份,我需要计数 0。如下所示:

[
    {
        "month": 01,
        "totalCount": 0
    },
    {
        "month": 02,
        "totalCount": 10
    },
        .
        .
        .

]

请帮忙。谢谢你。

标签: node.jspostgresqlcountsequelize.jsrecord

解决方案


推荐阅读