分页语句的优化

简介:

前言

经常会碰到分页语句的优化,今天在遍历网页的时候又碰到了,想想还是写篇文章,以后碰到类似的问题就可以拿这篇文章回复了。

举个例子

SELECT B FROM hugeTable ORDER BY A LIMIT 10000 OFFSET 500000

需要在ON hugetable (A,B)建索引,同时修改语句

SELECT i.B, k.A
   FROM ( SELECT j.A 
            FROM hugeTable j 
           WHERE j.A >  $value_of_A_from_row_520000 
           LIMIT 10000
        ) k
   JOIN hugetable i
     ON i.A = k.A
  ORDER
     BY k.A

参考:

https://stackoverflow.com/questions/17812794/why-does-mysql-innodb-creating-sort-index-when-unique-index-exists

相关文章
|
Rust 安全 程序员
|
JSON API 开发者
钉钉如何调用「创建钉钉待办任务」接口?
钉钉如何调用「创建钉钉待办任务」接口?
661 0
|
存储 编解码 Java
图片Exif信息解析(Java实现)
图片Exif信息解析(Java实现)
|
9月前
|
机器学习/深度学习 自然语言处理 算法
AI 世界生存手册(一):从LR到DeepSeek,模型慢慢变大了,也变强了
大家都可以通过写 prompt 来和大模型对话,那大模型之前的算法是怎样的,算法世界经过了哪些比较关键的发展,最后为什么是大模型这条路线走向了 AGI,作者用两篇文章共5.7万字详细探索一下。
AI 世界生存手册(一):从LR到DeepSeek,模型慢慢变大了,也变强了
|
JavaScript 前端开发 数据处理
【Vue面试题二十八】、vue要做权限管理该怎么做?如果控制到按钮级别的权限怎么做?
这篇文章讨论了Vue中实现权限管理的策略,包括接口权限、路由权限、菜单权限和按钮权限的控制方法,并提供了不同的实现方案及代码示例,以确保用户只能访问被授权的资源。
【Vue面试题二十八】、vue要做权限管理该怎么做?如果控制到按钮级别的权限怎么做?
|
11月前
|
开发工具 数据安全/隐私保护 git
GPG 101
本文介绍了GPG(GnuPG)的基本使用方法,GPG是OpenPGP标准的完整免费实现,支持数据加密和签名。文章涵盖GPG的基础概念、安装、密钥生成与管理、导出与导入、签名与验证、加密与解密以及Git配置等内容。特别提醒不要上传任何信息到公共密钥服务器,以免造成安全隐患。更多详细内容请参考我的博客:[gpg-101](https://blog.timerring.com/posts/gpg-101)。
357 6
|
10月前
|
机器学习/深度学习 人工智能 安全
新成员QwQ,邀你一起思忖未知之界
新成员QwQ,邀你一起思忖未知之界
|
安全 API 数据安全/隐私保护
Django与第三方服务的集成:支付、邮件等
【4月更文挑战第15天】本文介绍了Django集成支付服务和邮件服务的方法。对于支付服务,包括选择支付网关(如支付宝、微信支付、Stripe)、安装Django库、配置参数、创建支付视图及处理支付结果。而对于邮件服务,涉及配置邮件服务器、使用`django.core.mail`发送邮件,以及集成SendGrid等第三方服务以增强邮件功能。集成这些服务能丰富Django应用功能,同时要注意安全性与可靠性。
|
监控 网络协议 安全
Socks5协议原理分析及实现对比与问题排查实践
这篇文章《socks5协议原理分析及实现对比与问题排查实践》将深入探讨Socks5协议的工作原理,并对其与其他网络协议的实现进行详细比较。作者还将分享在实际应用过程中所遇到的问题及排查方法。对于想要提高系统安全性和性能的开发人员,本文提供了丰富的案例分析与实践经验。 在这篇文章中,读者将了解Socks5协议的基本概念、工作原理、具体实现方式以及常见问题与解决方案。这不仅有助于开发人员更好地理解Socks5协议,还能增强他们在开发与部署中应对复杂网络环境的能力,让我们一同探讨这些关键技术。
Socks5协议原理分析及实现对比与问题排查实践