mysql的limit优化

news/2024/7/8 1:53:25 标签: 数据库, 大数据

我们工作中可能会遇到大数据量(假设上千万条)分页的情况,执行的语句类似以下sql语句:

  select * from record limit 2000000,10

运行这条语句,时间保持在30秒左右,这样的性能是很差的。

那我们该怎么去优化它呢?

将sql改为下面这样:

  Select * From record Where id >=(

    Select id From record Order By id limit 2000000,1

  ) limit 10

(以上语句含义为:分页时传入的offset为2000000,那么我们将先查询第2000000条数据的id(主键)(第2000000条数据的id不一定为2000000),再在主句中使用主键id作为条件进行查询)

时间保持在0.6左右。可以预计offset越大,后者越优。

 

转载于:https://www.cnblogs.com/573734817pc/p/11063482.html


http://www.niftyadmin.cn/n/928495.html

相关文章

Stream Collectors - toList、toSet

public static <T> Collector<T,​?,​List<T>> toList() public static <T> Collector<T,​?,​Set<T>> toSet() 上面说完了toCollection这里接着说一下toLIst和toSet这两个方法。其实这两个方法的作用toCollection都能实现&#xff…

CentOS 7 安装 Nginx

导语 下面会用 yum 和编译两种方式来安装 Nginx。 yum 安装 使用 yum 命令&#xff0c;是相对简单的&#xff0c;输入 yum install -y nginx 显示如上界面&#xff0c;既是安装成功。接下来开启 Nginx 服务 配置文件在 /etc/nginx/nginx.conf&#xff0c; 代码文件地址在 /usr…

Stream Collectors - toConcurrentMap

和toMap方法一样&#xff0c;也根据参数的不同重载了3个方法&#xff0c;作用也和toMap一样&#xff0c;只不过操作的数据类型是ConcurrentMap&#xff0c;返回结果toMap是HashMap&#xff0c;ConcurrentMap返回的是ConcurrentHashMap&#xff0c;这个执行效率差一点但是是线程…

基于django搭建网站

Django 是由Python开发的一个免费的开源web框架&#xff0c;可以用于快速搭建网站。ps:web框架&#xff0c;也叫web应用框架&#xff0c;提供数据库接口&#xff0c;标准样板&#xff0c;会话管理等来支持网站&#xff0c;网络应用&#xff0c;服务的开发。安装django官网https…

linux--VSS/RSS/PSS/USS

|--内存耗用&#xff1a;VSS/RSS/PSS/USS   VSS - Virtual Set Size 虚拟耗用内存&#xff08;包含共享库占用的内存&#xff09;   RSS - Resident Set Size 实际使用物理内存&#xff08;包含共享库占用的内存&#xff09;   PSS - Proportional Set Size 实际使用的物…

Stream Collectors - toUnmodifiableList、toUnmodifiableSet

public static <T> Collector<T,​?,​List<T>> toUnmodifiableList() public static <T> Collector<T,​?,​Set<T>> toUnmodifiableSet() 根据字面上的意思就是返回的ArrayList或HashSet结果是不可更改的。以上两个方法以toUnmodifi…

[翻译]Effective Java in Kotlin:2. 遇到多个构造器参数时,考虑用构建者

原文&#xff1a;Effective Java in Kotlin, item 2: Consider a builder when faced with many constructor parameters Reminder from the book 在Java中&#xff0c;通常的解决可选构造参数的方式是使用可伸缩构造器&#xff08;telescoping constructor&#xff09;。当使用…

glob - 形成路径名称

描述 (DESCRIPTION) 很久以前 在 UNIX V6 版 中 有一个 程序 /etc/glob 用来 展开 通配符模板. 不久以后 它 成为 shell 内建功能. 现在 人们 开发了 类似的 库函数 glob(3), 让 用户程序 实现 同样的 功能. 此 规则 遵循 (POSIX 1003.2, 3.13). 通配符匹配 (WILDCARD MATCHING…