返回顶部
首页 > 资讯 > 数据库 >mysql 使用技巧 分页limit
  • 901
分享到

mysql 使用技巧 分页limit

mysql使用技巧分页limit 2018-05-16 19:05:07 901人浏览 才女
摘要

Mysql 分页使用 limit关键字,limit x,y (x代表从哪条数据开始,y代表页面大小。mysql第一条数据在limit计算时索引为0) limit 10   前10条 limit 0,10   从第1条开始的10条

mysql 使用技巧 分页limit

Mysql 分页使用 limit关键字,limit x,y (x代表从哪条数据开始,y代表页面大小。mysql第一条数据在limit计算时索引为0)
limit 10
  前10条
limit 0,10
  从第1条开始的10条
limit 10,10
  从第 11 条开始的 10 条
limit 100,10
  从第101条开始的10条
  数据量大时(>千万),效率低
oracal 分页,使用 oracle的特殊列 rownum
select * from (select *,rownum R from (select * from a)

实例:查找入职员工时间排名倒数第三的员工所有信息。limit 2,1代表选择从第3条数据开始的1条数据,即第3页数据,页面大小为1

select * from employees order by hire_date desc limit 2,1

 

前n条数据,即从索引0开始计算:limit n 或者 limit 0,n

mysql> select * from employees order by hire_date desc limit 5;
+-------------+------------+-----------+---------+--------------------+------------+----------+---------+----------------+------------+---------------+
| employee_id | first_name | last_name | email   | phone_number       | hire_date  | job_id   | salary  | commission_pct | manager_id | department_id |
+-------------+------------+-----------+---------+--------------------+------------+----------+---------+----------------+------------+---------------+
|         173 | Sundita    | Kumar     | SKUMAR  | 011.44.1343.329268 | 2000-04-21 | SA_REP   | 6100.00 |           0.10 |        148 |            80 |
|         167 | Amit       | Banda     | ABANDA  | 011.44.1346.729268 | 2000-04-21 | SA_REP   | 6200.00 |           0.10 |        147 |            80 |
|         166 | Sundar     | Ande      | SANDE   | 011.44.1346.629268 | 2000-03-24 | SA_REP   | 6400.00 |           0.10 |        147 |            80 |
|         128 | Steven     | Markle    | SMARKLE | 650.124.1434       | 2000-03-08 | ST_CLERK | 2200.00 |           NULL |        120 |            50 |
|         165 | David      | Lee       | DLEE    | 011.44.1346.529268 | 2000-02-23 | SA_REP   | 6800.00 |           0.10 |        147 |            80 |
+-------------+------------+-----------+---------+--------------------+------------+----------+---------+----------------+------------+---------------+
5 rows in set (0.00 sec)

mysql> select * from employees order by hire_date desc limit 0,5;
+-------------+------------+-----------+---------+--------------------+------------+----------+---------+----------------+------------+---------------+
| employee_id | first_name | last_name | email   | phone_number       | hire_date  | job_id   | salary  | commission_pct | manager_id | department_id |
+-------------+------------+-----------+---------+--------------------+------------+----------+---------+----------------+------------+---------------+
|         173 | Sundita    | Kumar     | SKUMAR  | 011.44.1343.329268 | 2000-04-21 | SA_REP   | 6100.00 |           0.10 |        148 |            80 |
|         167 | Amit       | Banda     | ABANDA  | 011.44.1346.729268 | 2000-04-21 | SA_REP   | 6200.00 |           0.10 |        147 |            80 |
|         166 | Sundar     | Ande      | SANDE   | 011.44.1346.629268 | 2000-03-24 | SA_REP   | 6400.00 |           0.10 |        147 |            80 |
|         128 | Steven     | Markle    | SMARKLE | 650.124.1434       | 2000-03-08 | ST_CLERK | 2200.00 |           NULL |        120 |            50 |
|         165 | David      | Lee       | DLEE    | 011.44.1346.529268 | 2000-02-23 | SA_REP   | 6800.00 |           0.10 |        147 |            80 |
+-------------+------------+-----------+---------+--------------------+------------+----------+---------+----------------+------------+---------------+
5 rows in set (0.00 sec)

 

更多例子 

limit 5     前5条数据
limit 2,1   第3页数据,页面大小为1
limit 2,2   第2页数据,页面大小为2
limit 2,3   第3条数据起,共3条数据,此数据不符合分页数据显示格式
分页显示格式:limit startIndex pageSize
startIndex = (需要查询的页码数 - 1) * pageSize
mysql> select * from employees order by hire_date desc limit 5;
+-------------+------------+-----------+---------+--------------------+------------+----------+---------+----------------+------------+---------------+
| employee_id | first_name | last_name | email   | phone_number       | hire_date  | job_id   | salary  | commission_pct | manager_id | department_id |
+-------------+------------+-----------+---------+--------------------+------------+----------+---------+----------------+------------+---------------+
|         173 | Sundita    | Kumar     | SKUMAR  | 011.44.1343.329268 | 2000-04-21 | SA_REP   | 6100.00 |           0.10 |        148 |            80 |
|         167 | Amit       | Banda     | ABANDA  | 011.44.1346.729268 | 2000-04-21 | SA_REP   | 6200.00 |           0.10 |        147 |            80 |
|         166 | Sundar     | Ande      | SANDE   | 011.44.1346.629268 | 2000-03-24 | SA_REP   | 6400.00 |           0.10 |        147 |            80 |
|         128 | Steven     | Markle    | SMARKLE | 650.124.1434       | 2000-03-08 | ST_CLERK | 2200.00 |           NULL |        120 |            50 |
|         165 | David      | Lee       | DLEE    | 011.44.1346.529268 | 2000-02-23 | SA_REP   | 6800.00 |           0.10 |        147 |            80 |
+-------------+------------+-----------+---------+--------------------+------------+----------+---------+----------------+------------+---------------+
5 rows in set (0.00 sec)

mysql> select * from employees order by hire_date desc limit 2,1;
+-------------+------------+-----------+-------+--------------------+------------+--------+---------+----------------+------------+---------------+
| employee_id | first_name | last_name | email | phone_number       | hire_date  | job_id | salary  | commission_pct | manager_id | department_id |
+-------------+------------+-----------+-------+--------------------+------------+--------+---------+----------------+------------+---------------+
|         166 | Sundar     | Ande      | SANDE | 011.44.1346.629268 | 2000-03-24 | SA_REP | 6400.00 |           0.10 |        147 |            80 |
+-------------+------------+-----------+-------+--------------------+------------+--------+---------+----------------+------------+---------------+
1 row in set (0.00 sec)

mysql> select * from employees order by hire_date desc limit 2,2;
+-------------+------------+-----------+---------+--------------------+------------+----------+---------+----------------+------------+---------------+
| employee_id | first_name | last_name | email   | phone_number       | hire_date  | job_id   | salary  | commission_pct | manager_id | department_id |
+-------------+------------+-----------+---------+--------------------+------------+----------+---------+----------------+------------+---------------+
|         166 | Sundar     | Ande      | SANDE   | 011.44.1346.629268 | 2000-03-24 | SA_REP   | 6400.00 |           0.10 |        147 |            80 |
|         128 | Steven     | Markle    | SMARKLE | 650.124.1434       | 2000-03-08 | ST_CLERK | 2200.00 |           NULL |        120 |            50 |
+-------------+------------+-----------+---------+--------------------+------------+----------+---------+----------------+------------+---------------+
2 rows in set (0.00 sec)

mysql> select * from employees order by hire_date desc limit 2,3;
+-------------+------------+-----------+---------+--------------------+------------+----------+---------+----------------+------------+---------------+
| employee_id | first_name | last_name | email   | phone_number       | hire_date  | job_id   | salary  | commission_pct | manager_id | department_id |
+-------------+------------+-----------+---------+--------------------+------------+----------+---------+----------------+------------+---------------+
|         166 | Sundar     | Ande      | SANDE   | 011.44.1346.629268 | 2000-03-24 | SA_REP   | 6400.00 |           0.10 |        147 |            80 |
|         128 | Steven     | Markle    | SMARKLE | 650.124.1434       | 2000-03-08 | ST_CLERK | 2200.00 |           NULL |        120 |            50 |
|         165 | David      | Lee       | DLEE    | 011.44.1346.529268 | 2000-02-23 | SA_REP   | 6800.00 |           0.10 |        147 |            80 |
+-------------+------------+-----------+---------+--------------------+------------+----------+---------+----------------+------------+---------------+
3 rows in set (0.00 sec)

 

您可能感兴趣的文档:

--结束END--

本文标题: mysql 使用技巧 分页limit

本文链接: https://lsjlt.com/news/5584.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

猜你喜欢
  • mysql 使用技巧 分页limit
    mysql 分页使用 limit关键字,limit x,y (x代表从哪条数据开始,y代表页面大小。mysql第一条数据在limit计算时索引为0) limit 10   前10条 limit 0,10   从第1条开始的10条...
    99+
    2018-05-16
    mysql 使用技巧 分页limit
  • mysql使用limit分页优化方案
    一、测试实验 mysql分页直接用limit start, count分页语句:   select * from product limit start, count 当起始页较小时,查询没有性能问题,我们分别看下从1...
    99+
    2017-11-14
    mysql使用limit分页优化方案
  • Mysql中如何使用分页limit语句
    Mysql中如何使用分页limit语句,很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所收获。已经为我们提供了这样一个功能。 ...
    99+
    2024-04-02
  • Mysql 分页语句Limit用法
    Sql代码 SELECT * FROM table LIMIT [offset,] rows | rows OFFSET offset LIMIT 子句可以被用于强制 SELECT 语句返回指定的记录数。LIMIT 接受...
    99+
    2014-09-24
    Mysql 分页语句Limit用法
  • MySQL如何使用limit方式实现分页
    这篇文章主要介绍了MySQL如何使用limit方式实现分页,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。一、limit 基本实现方式一般情况...
    99+
    2024-04-02
  • MySQL 8.0 对 limit 的优化技巧
    目录一、前言二、mysql 8.0 对limit 的改进三、实践出真知3.1 默认开启参数3.2 关闭该参数四、总结一、前言 提到 limit 优化,大多数 MySQL DBA 都不会陌生,能想到各种应对策略,比如延迟关...
    99+
    2024-04-02
  • MySQL 8.0 对 limit 的优化技巧
    目录一、前言二、MySQL 8.0 对limit 的改进三、实践出真知3.1 默认开启参数3.2 关闭该参数四、总结一、前言 提到 limit 优化,大多数 MySQL DBA 都不...
    99+
    2022-11-13
    MySQL 8.0  limit优化 MySQL 8.0  limit
  • Mysql优化技巧之Limit查询的示例分析
    小编给大家分享一下Mysql优化技巧之Limit查询的示例分析,希望大家阅读完这篇文章之后都有所收获,下面让我们一起去探讨吧!前言在实际业务中对于分页来说是一个比较常见的业务需求。那么就会使用到limit查...
    99+
    2024-04-02
  • 如何在MySQL中使用LIMIT进行分页查询
    在MySQL中,可以使用LIMIT关键字来实现分页查询。LIMIT语法如下: SELECT column1, column2...
    99+
    2024-04-09
    MySQL
  • MySQL 分页查询的优化技巧
    在有分页查询的应用中,包括 LIMIT 和 OFFSET 的查询十分常见,而且几乎每个都会有一个 ORDER BY 子句。如果使用索引排序的话将对性能优化十分有帮助,否则服务端需要做很多文件排序。 一个高频的问题...
    99+
    2022-05-20
    MySQL 分页查询 MySQL 分页查询优化
  • 浅谈mysql使用limit分页优化方案的实现
    Mysql limit分页语句用法 与Oracle和MS SqlServer相比,mysql的分页方法简单的让人想哭。 --语法: SELECT * FROM table LIMIT [offs...
    99+
    2024-04-02
  • 分享MySQL中锁的使用技巧
    MySQL 锁的使用技巧分享随着数据库应用的日益广泛,对数据库的并发控制和数据完整性要求也越来越高。在MySQL数据库中,锁是一种重要的并发控制手段,可以有效地保护数据的完整性和一致性。本文将对MySQL锁的使用技巧进行详细分享,并提供具体...
    99+
    2023-12-21
    MySQL 技巧
  • 如何在mysql中优化LIMIT分页
    这篇文章将为大家详细讲解有关如何在mysql中优化LIMIT分页,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。1、优化方法尽可能的使用覆盖索引扫描,而不是查询所有的列。然后根据需要做一次关联...
    99+
    2023-06-15
  • mysql limit分页性能如何优化
    MySQL的LIMIT子句用于限制查询结果集的数量。在使用LIMIT进行分页时,可以通过一些优化技巧提高性能。 以下是一些优化LIM...
    99+
    2024-04-09
    mysql
  • MySQL SQL使用技巧
    须知:SQL语言:结构化查询语言,是关系型数据库查询语言的标准,不同的数据库虽然有自己私有扩展,但关键词都支持:(select、update、delete、insert、where)SQ...
    99+
    2024-04-02
  • 为什么MySQL分页用limit会越来越慢
    目录一、测试实验二、 对limit分页问题的性能优化方法2.1 利用表的覆盖索引来加速分页查询2.2 利用 id>=的形式:2.3 利用join总结:阿牛新入职了一家新公司,第...
    99+
    2024-04-02
  • 浅谈MySQL分页Limit的性能问题
    MySQL的分页查询通常通过limit来实现。limit接收1或2个整数型参数,如果是2个参数,第一个是指定第一个返回记录行的偏移量,第二个是返回记录行的最大数目。初始记录行的偏移量是0。为了与Postgr...
    99+
    2024-04-02
  • MySQL分页Limit的优化过程实战
    前言 在我们使用查询语句的时候,经常要返回前几条或者中间某几行数据,这个时候怎么办呢?不用担心,mysql已经为我们提供了这样一个功能。 SELECT * FROM table LIMIT [o...
    99+
    2024-04-02
  • mysql 中怎么实现limit分页查询
    本篇文章为大家展示了mysql 中怎么实现limit分页查询,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。  优化方法1(让分页操作在索引中进行):  一般表中经常...
    99+
    2024-04-02
  • ADO分页技巧有哪些
    本篇内容主要讲解“ADO分页技巧有哪些”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“ADO分页技巧有哪些”吧!大家都说:原来的ADO分页方法中的游标效率低下,而且容易引起锁,甚至导致死机。我想问...
    99+
    2023-06-17
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作