首页 > 解决方案 > 从 PostgreSQL 数据库中分页查询数据

问题描述

我有分页查询来自 PostgreSQL 数据库的数据。每个请求我都会像这样获取数据:

let lastNArticles: Article[] = await Article.findAll({
                limit: +req.body.count * +req.body.page,
                order: [["created_at", "DESC"]],
                include: [
                    User,
                    {
                        model: ArticleOwnTags,
                        include: [ArticleTag],
                    },
                ],
            });

并从最后一个“req.body.count”获取的行中获取。是否有任何方法可以仅获取页面大小的行数(+req.body.count - 页大小)而不是所有(计数 * 页)行?配置 PostgreSQL?

标签: javascripttypescriptpostgresqlexpresssequelize-typescript

解决方案


我发现限制了 PostgreSQL。使用 sequelize 将是这样的:

let lastNArticles: Article[] = await Article.findAll({
                limit: +req.body.count,
                offset: +req.body.count * +req.body.page
                order: [["created_at", "DESC"]],
                include: [
                    User,
                    {
                        model: ArticleOwnTags,
                        include: [ArticleTag],
                    },
                ],
            });

推荐阅读