sql分页查询

清疚 2022-01-28 09:07 439阅读 0赞

文章目录

  • 分页查询
      • oracle中分页查询
      • mysql中分页查询

分页查询

分页查询在绝大多数项目中都会用到。如果要在浏览器中显示很多数据信息,这时就会用到分页来显示。

要实现分页需要用到两个参数:

  • currentPage:表示当前页
  • lineSize:表示每页显示的数据量

oracle中分页查询

在oracle中分页查询需要使用ROWNUM关键字

  1. SELECT *
  2. FROM (SELECT ROWNUM RN,E.* FROM EMP E WHERE ROWNUM <= 3)TEMP
  3. WHERE TEMP.RN >= 1;
  • 查询第一页数据,每页显示三条数据
  • currentPage = 1;lineSize = 3;

    SELECT
    FROM (SELECT ROWNUM RN,E.
    FROM EMP E WHERE ROWNUM <= 6)TEMP
    WHERE TEMP.RN >=4

  • 查询第二页数据,每页显示三条数据

  • currentPage = 2;lineSize = 3;

    SELECT
    FROM (SELECT ROWNUM RN,E.
    FROM EMP E WHERE ROWNUM <=9)TEMP
    WHERE TEMP.RN >=7;

  • 查询第三页数据,每页显示三条数据

  • currentPage = 3;lineSize = 3;

总结:

要从数据库中查询第m条到n条数据时:

  • m = (currentPage - 1)*lineSize + 1
  • n = currentPage*lineSize

mysql中分页查询

在MySQL中实现分页查询需要使用到LIMIT关键字,之后有两个参数m,n

  • m:表示从数据库的第m条数据开始查询(MySQL中的第一条数据m==0)
  • n:表示查询到第n条数据

    mysql> SELECT *

    1. FROM EMP
    2. LIMIT 0,3;
  • 显示第一页数据,每页显示三条数据;

    mysql> SELECT *

    1. FROM EMP
    2. LIMIT 5,5;
  • 显示第二页数据,每页显示五条数据;

总结:

m = (currentPage -1)*lineSize
n = lineSize

以上是oracle和MySQL的分页实现,SqlServer使用TOP关键字来实现。

发表评论

表情:
评论列表 (有 0 条评论,439人围观)

还没有评论,来说两句吧...

相关阅读

    相关 SQL教程——查询

    > 本教程中所使用的数据库的建表语句都在“SQL教程——索引”这篇文章中,点击链接直达:[索引&建表语句][Link 1] > 摘要:本文主要介绍SQL的子查询分页  

    相关 sql查询

    文章目录 分页查询 oracle中分页查询 mysql中分页查询 分页查询 > 分页查询在绝大多数项目中都会用到。如

    相关 SQL查询语句

      有关分页 SQL 的资料很多,有的使用存储过程,有的使用游标。本人不喜欢使用游标,我觉得它耗资、效率低;使用存储过程是个不错的选择,因为存储过程是经过预编译的,执行效率高