MySQL分页

一、基本用法

  mysql分页基本语法:SELECT * FROM table LIMIT [offset,] rows | rows OFFSET offset  

  可以接收一个或者两个参数,参数必须为整数。

  1、给定一个参数:表示的是返回记录数的最大行数

  2、给定两个参数:第一个参数表示返回记录行的偏移量,注意偏移量从0开始

            第二个参数表示返回的记录行数

二、实际开发常用

  由上面的基本分页方法,可知:

    select * from table limit 0,10;   //表示查询第一页的10条数据,也就是第1 -10条数据

    select * from table limit 10,10; //表示查询第二页的10条数据,也就是第11-20条数据

    select * from table limit 20,10; //表示查询第三页的10条数据,也就是第21-30条数据。 

  但是项目环境中,一般传到后台服务中的数据是:currentPage(当前页数,一般从1开始)和 pageSize(记录行数),所以,在实际应用到sql中的时候,必须经过换算页码来进行分页查询。

  通用的换算:select * from table limit (currentPage-1)*pageSize,pageSize。

三、说明

  MySQL处理分页的时候,一般的逻辑是:

  limit 10,10  -  查询出 10 + 10 条数据,然后丢弃掉前 10 条。

  limit 20,10  -  查询出 20 + 10 条数据,然后丢弃掉前 20 条。

 

    

  

原文地址:https://www.cnblogs.com/eric-fang/p/11176205.html