如何在sequelize中找到没有任务的用户数

How to find the count of users who doesn't have tasks in sequelize

如何找到 Sequelize.Users 中没有任务的用户数,任务是不同的模型,用户有许多任务(外键关系)

您可以在单个 sequelize 查询中按照以下方式进行

UserModel.findAndCountAll({
        offset: 0,
        limit: 10,
        group: ["user.id"],
        includeIgnoreAttributes: false,
        include: [
            {
                model : TaskModel
            }
        ],
        attributes: [
            "id",
            [Sequelize.fn("COUNT", Sequelize.col("tasks.id")), "taskCount"]
        ],
        having: Sequelize.literal(`taskCount > 0`)
    })

这样你就可以分页得到那些没有任务的用户,结果count 属性将包含没有任务的用户总数。