news 2026/5/1 7:57:46

MySQL面试题 如何解决深分页?

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
MySQL面试题 如何解决深分页?

深分页为什么会慢?

深分页select * from table limit offset,size它不是跳过offset条,而是从第一条开始扫描,舍弃前面的offset条,最后再取出size条数据
所以offset越大,需要扫描的行数就越多,就会越慢

深分页怎么解决?

1.子查询+覆盖索引

子查询就是先通过索引定位到起始id,再通过id去主键索引里找数据

SELECT*FROMordersWHEREid>=(SELECTidFROMordersORDERBYidLIMIT1000000,1)ORDERBYidLIMIT20;

先通过覆盖索引先定位到要要取的二十个主键,再回表查完整数据

SELECTo.*FROMorders oJOIN(SELECTidFROMordersORDERBYidLIMIT1000000,20)tONo.id=t.id;
2.游标分页

游标分页就是每次查询都需要先提供上一页的最后一条数据的id,查询时根据这个id跳过前面的数据

SELECT*FROMordersWHEREid>1000000ORDERBYidLIMIT20;

游标分页的局限性

  1. 只能一页一页的查询,不能条页
  2. 需要id是递增的
  3. 删除数据可能导致分页错乱。比如用户在看第 2 页时,第 1 页的数据被删了,刷新后原本在第 2 页的内容会“顶”到第 1 页,导致翻页时漏掉部分信息。

业务层面的解决方案

1)限制最大翻页数。Google 搜索、淘宝商品列表都不让你翻到第 10000 页。大部分用户不会真的翻那么多页,限制一下既省资源又合理。

2)改交互方式。无限滚动加载就是典型的游标分页场景,用户感知不到页码,也不需要跳页。

3)缩小数据范围。深度分页通常说明数据量太大,可以引导用户加筛选条件,把结果集控制在合理范围内。

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/5/1 7:56:14

老年陪伴机器人语音模块:基于SenseVoiceSmall的情感响应

老年陪伴机器人语音模块:基于SenseVoiceSmall的情感响应 随着老龄化社会的加速到来,如何提升老年人的生活质量成为社会关注的重点。在众多智能化解决方案中,老年陪伴机器人正逐渐从概念走向现实。而其中最关键的一环——语音交互系统&#x…

作者头像 李华
网站建设 2026/3/15 0:29:06

Blender智能重拓扑插件QRemeshify完全操作指南

Blender智能重拓扑插件QRemeshify完全操作指南 【免费下载链接】QRemeshify A Blender extension for an easy-to-use remesher that outputs good-quality quad topology 项目地址: https://gitcode.com/gh_mirrors/qr/QRemeshify 还在为复杂的3D网格优化而苦恼吗&…

作者头像 李华
网站建设 2026/4/23 12:08:38

Qwen-Image-Layered为何能在消费卡运行?深度解析

Qwen-Image-Layered为何能在消费卡运行?深度解析 你有没有遇到过这种情况:想用AI生成一张带多层元素的图像——比如背景是山水画,中间是产品图,前景还有动态文字标题,结果一通操作下来,不是字体模糊&#…

作者头像 李华
网站建设 2026/5/1 7:33:19

AI视频总结神器:3步掌握B站海量内容的终极方法

AI视频总结神器:3步掌握B站海量内容的终极方法 【免费下载链接】BiliTools A cross-platform bilibili toolbox. 跨平台哔哩哔哩工具箱,支持视频、音乐、番剧、课程下载……持续更新 项目地址: https://gitcode.com/GitHub_Trending/bilit/BiliTools …

作者头像 李华
网站建设 2026/4/30 17:25:33

Open-AutoGLM性能优化:提升视觉理解准确率的3个技巧

Open-AutoGLM性能优化:提升视觉理解准确率的3个技巧 Open-AutoGLM – 智谱开源的手机端AI Agent框架,为移动设备上的自动化任务处理提供了全新的可能性。它结合了强大的视觉语言模型与安卓系统的底层控制能力,让AI不仅能“看懂”屏幕&#x…

作者头像 李华