express mysql 怎么分页

发布于 2022-09-06 10:30:32 字数 301 浏览 10 评论 0

sql语句应该怎么写clipboard.png

clipboard.png

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

萌酱 2022-09-13 10:30:32

谢邀!简单写一个示例供参考:

路由层,也可以说控制层: routes/blog.js

var express = require('express');
var router = express.Router();

var blogDao = require('../dao/blogDao');

// 获取列表
router.get('/list', function(req, res, next) {
    blogDao.blogList(req, res, next); 
});

module.exports = router;

DAO层: dao/blogDao.js

var mysql = require('mysql');
var $conf = require('../config/config');
var $util = require('../util/util');
var $sql = require('../mapper/blogMapper');

// 使用连接池,提升性能
var pool = mysql.createPool($util.extend({}, $conf.mysql));

// 向前台返回JSON方法的简单封装
var jsonWrite = function(res, ret) {
    if (typeof ret === 'undefined') {
        res.json({
            code: '-1',
            msg: '后台异常'
        });
    } else {
        res.json(ret);
    }
};

module.exports = {
    blogList: function(req, res, next) {
        pool.getConnection(function(err, connection) {
            // 获取前台页面传过来的参数
            var param = req.query || req.params;
            var pageNum = parseInt(param.pageNum || 1);// 页码
            var end = parseInt(param.pageSize || 10); // 默认页数
            var start = (pageNum - 1) * end;
            connection.query($sql.queryAll, [start, end], function(err, result) {
                jsonWrite(res, result);
                connection.release();
            });
        });
    }
};

sql: mapper/blogMapper.js

var blogSql = {
    queryAll: 'select * from blog_list order by create_time desc limit ?, ?'
};

module.exports = blogSql;

希望对您有所帮助!

爱你是孤单的心事 2022-09-13 10:30:32

先获取数据总个数 select count(*) as sum from User
总页数 pages = Math.ceil(sum/n) //每页显示n个
再根据页数去查询 select * from User limit index,n //index 页码

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文