返回博客

Sequelize 分页与计数

使用 Sequelize 进行数据库分页查询并获取总记录数的教程,包含完整代码示例和优化建议。

Mt.r
|

Sequelize 分页并计数

Post.findAndCountAll({
    where: {...},
    order: [...],
    limit: 5,
    offset: 0,
}).then(function (result) {
    res.render(...);
});

完整写法

const paginate = (query, { page, pageSize }) => {
  const offset = page * pageSize;
  const limit = pageSize;

  return {
    ...query,
    offset,
    limit,
  };
};

model.findAll(
  paginate(
    {
      where: {}, // conditions
    },
    { page, pageSize },
  ),
);

参考文章