В одном запросе на продолжение можно выполнить следующие действия:
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
будет содержать общее количество таких пользователей, у которых есть нет задачи.