我的编程空间,编程开发者的网络收藏夹
学习永远不晚

SQL优化limit分页的方法是什么

短信预约 -IT技能 免费直播动态提醒
省份

北京

  • 北京
  • 上海
  • 天津
  • 重庆
  • 河北
  • 山东
  • 辽宁
  • 黑龙江
  • 吉林
  • 甘肃
  • 青海
  • 河南
  • 江苏
  • 湖北
  • 湖南
  • 江西
  • 浙江
  • 广东
  • 云南
  • 福建
  • 海南
  • 山西
  • 四川
  • 陕西
  • 贵州
  • 安徽
  • 广西
  • 内蒙
  • 西藏
  • 新疆
  • 宁夏
  • 兵团
手机号立即预约

请填写图片验证码后获取短信验证码

看不清楚,换张图片

免费获取短信验证码

SQL优化limit分页的方法是什么

本篇内容介绍了“SQL优化limit分页的方法是什么”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!

       Limit和OFFSET的问题,其实就是OFFSET的问题,它会导致MySQL扫描大量不需要的行然后再抛弃掉。如果使用书签可以记录前一次取到的数据的位置。那么下次就可以直接从记录的位置开始扫描。

下面看一个案例:

mysql>select id,product_id from product order by id desc  limit 20;
+--------------+----------------------------------+
| id           | product_id                       |
+--------------+----------------------------------+
|        71986 | 63308c71b16642a4bfb75cbe1049188b |
|        71985 | bb8eba635b6a4726b4172143fb1c1d04 |
|        71984 | 273243e1c9c64ee39351ea01a2489fa6 |
|        71983 | 83f253b3ecde47eebe6a6397dc0d319e |
|        71982 | 3c9780c86d1f4f24b95c9a08b4839c99 |
|        71981 | 183b197924434de0a47d1786773cb66f |
|        71980 | aff3b1385ee74893a3729664991d8e86 |
|        71979 | c662a0e5c4d64339a5a68b99268840e1 |
|        71978 | fe905e3dbdd2421c8e5ca47cd47232a4 |
|        71977 | 9a44f05fde72425fa4498b091d27fd58 |
|        71976 | c31afbd9c4ac46ffac34b2a14a49fb9f |
|        71975 | 62056557531143e18bc813c0c930dc96 |
|        71974 | 4ea1f0c978ca4441a232f563ba7181ee |
|        71973 | 413317481ccf449394ded39b53a0f5cf |
|        71972 | 493c6da548394bdc871d058bc93a9b93 |
|        71971 | 98fafa3c690243998b18da8a9f165297 |
|        71970 | 2e299b3ad38d4ce48bd1481799cb11a2 |
|        71969 | 7f176c93d9ac42659b40a40f4fbea937 |
|        71968 | d87671838a3246ddb393a336b8806905 |
|        71967 | 301e3b9cb8ab40d588547a9b7f8fdaba |
+--------------+----------------------------------+

按照id倒序排列,第一页取20行,id范围从71967到71986。

下一个分页:

mysql>select id,product_id from product where id < 71967 order by id desc  limit 20;
+--------------+----------------------------------+
| id           | product_id                       |
+--------------+----------------------------------+
|        71966 | fec841328f76466098e0f7ff71ad2e64 |
|        71965 | 91383bdf53f64c0c957f00f5e894ee08 |
|        71964 | 0fe1f36aecc64e59b1f833e2a809b1d9 |
|        71963 | 583ccc4dd2bc48889b672c700ff723df |
|        71962 | 2d7417d85f7d4bc5a403be95d42c66c2 |
|        71961 | f46e02c1abc046ffba6a893a0af32211 |
|        71960 | 1acd9bf330d24cfd90005cc2ade28f8d |
|        71959 | cea963ee97814bc09b657c0453b0cb55 |
|        71958 | 700caf0dc6c745198d141c8006f87ee3 |
|        71957 | 2239be33ebd2485ea6209b5186456531 |
|        71956 | 30a4095734074612ad0a0fb32bdab1e4 |
|        71955 | d9071a755a994f2eae11c9fb17e8071a |
|        71954 | 4d0453c47af347078bc6bc2b5942061c |
|        71953 | dda45cced0844fd992194cbaa334e420 |
|        71952 | 6e65d866889e4b15abe272f1e814ecc2 |
|        71951 | 4b22cdbb1f34448494251fd4f3eb6425 |
|        71950 | 38f5d0cac07a4dc5a33ca62609a6debd |
|        71949 | faa53f03f4714c9bb0991eb6b18ed7d9 |
|        71948 | c5719ee4fcad48d0a6bfc8f28b415f1e |
|        71947 | c6beaaa94829465ab1f9b6e0187d2721 |
+--------------+----------------------------------+

      这样就可以保证每次分页查询的效率都很高,但是使用这样的查询有一定的条件限制,比如:

1、必须有主键,并且是单调递增的。

2、如果查询语句有group by分组,那么就不能采用这种方法。

“SQL优化limit分页的方法是什么”的内容就介绍到这里了,感谢大家的阅读。如果想了解更多行业相关的知识可以关注亿速云网站,小编将为大家输出更多高质量的实用文章!

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

SQL优化limit分页的方法是什么

下载Word文档到电脑,方便收藏和打印~

下载Word文档

猜你喜欢

mysql limit分页实现的方法是什么

MySQL中的LIMIT语句用于限制查询结果的数量。它的基本语法如下:SELECT column1, column2, ...FROM table_nameLIMIT offset, count;其中,offset表示查询结果的起始位
mysql limit分页实现的方法是什么
2024-04-09

oracle分页查询优化的方法是什么

Oracle数据库提供了几种方法来优化分页查询:1. 使用ROWNUM:ROWNUM是一个伪列,表示返回结果集中的行数。可以在查询中使用ROWNUM来限制返回的行数。例如,使用ROWNUM>10来获取结果集的第11行及以后的行。这种方法适用
2023-09-20

mysql分页查询优化的方法是什么

MySQL分页查询的优化方法包括:1. 使用索引:在进行分页查询时,使用合适的索引可以大大提高查询性能。可以创建适当的索引,以确保查询中使用的列能够被快速定位和检索。2. 优化查询语句:通过优化查询语句的编写,可以减少查询的时间和资源消耗。
2023-10-08

MyBatis分页查询优化的方法是什么

MyBatis分页查询的优化方法主要包括以下几点:使用分页插件:MyBatis提供了一些分页插件,如MyBatis-PageHelper、MyBatis-Paginator等,可以帮助简化分页查询的操作,提高查询效率。优化SQL查询语句:在
MyBatis分页查询优化的方法是什么
2024-03-04

mysql大数据分页优化的方法是什么

在处理大数据分页时,可以通过以下方法来优化MySQL数据库的性能:使用索引:为查询条件中经常使用的字段添加索引,可以加快查询速度。同时,对需要排序的字段也可以添加索引。避免使用SELECT *:只选择需要的字段,而不是选择全部字段。这样可以
mysql大数据分页优化的方法是什么
2024-04-09

sql中limit的使用方法是什么

在SQL中,LIMIT是一个用于限制查询结果集返回行数的关键字。LIMIT语法如下:SELECT column1, column2, …FROM table_nameLIMIT number;其中:SELECT column1,
sql中limit的使用方法是什么
2024-04-09

mysql大数据分页优化的方法是什么

MySQL大数据分页优化MySQL大数据分页查询优化方法:使用索引、控制分页大小、利用查询缓存、优化LIMIT子句、使用window函数、分片技术、优化JOIN查询、使用游标、优化服务器配置,或使用NoSQL数据库。
mysql大数据分页优化的方法是什么
2024-04-09

sql在线优化的方法是什么

SQL 在线优化的方法有以下几种:使用索引:确保表中的列上有合适的索引,以加快数据检索速度。优化查询语句:避免使用 SELECT *,只选择所需的列;避免使用子查询,尽量使用 JOIN 等操作;避免使用 OR 条件,尽量使用 IN 或者
sql在线优化的方法是什么
2024-04-09

SQL Server索引优化的方法是什么

这篇“SQL Server索引优化的方法是什么”文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面我们一起来看看这篇“SQL Server索引优化的方
2023-06-27

SQL慢查询优化的方法是什么

本篇内容主要讲解“SQL慢查询优化的方法是什么”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“SQL慢查询优化的方法是什么”吧!1.背景页面无法正确获取数据,经排查原来是接口调用超时,而最后发现是
2023-06-26

SQL实现分页查询的方法是什么

SQL实现分页查询的方法主要有两种:1. 使用LIMIT和OFFSET关键字:```sqlSELECT * FROM table_name LIMIT offset, limit;```其中,offset表示偏移量,limit表示每页的数据
2023-08-15

sql笛卡尔积优化的方法是什么

SQL笛卡尔积(Cartesian Product)是指两个表的所有可能的组合。当两个表没有关联条件时,数据库系统会对这两个表进行笛卡尔积操作,造成性能下降和资源浪费。为了优化笛卡尔积操作,可以采取以下方法:添加关联条件:在进行表连接时,
sql笛卡尔积优化的方法是什么
2024-04-09

编程热搜

目录