返回顶部
首页 > 资讯 > 数据库 >怎么优化mysql分页时offset过大的Sql
  • 578
分享到

怎么优化mysql分页时offset过大的Sql

2024-04-02 19:04:59 578人浏览 独家记忆
摘要

这篇文章将为大家详细讲解有关怎么优化Mysql分页时offset过大的sql,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。通常分页查询的时候会使用这样的语句:SELEC&

这篇文章将为大家详细讲解有关怎么优化Mysql分页时offset过大的sql,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。

通常分页查询的时候会使用这样的语句:

SELECT
*
FROM table
where condition1 = 0
and condition2 = 0
and condition3 = -1
and condition4 = -1
order by id asc
LIMIT 2000 OFFSET 50000

当offset特别大时,这条语句的执行效率会明显减低,而且效率是随着offset的增大而降低的。

原因为:

mysql并不是跳过offset行,而是取offset+N行,然后返回放弃前offset行,返回N行,当offset特别大,然后单条数据也很大的时候,每次查询需要获取的数据就越多,自然就会很慢。

优化方案:

SELECT
*
FROM table
JOIN
(select id from table
where condition1 = 0
and condition2 = 0
and condition3 = -1
and condition4 = -1
order by id asc
LIMIT 2000 OFFSET 50000)
as tmp using(id)

或者

SELECT a.* FROM table a, 
(select id from table
where condition1 = 0
and condition2 = 0
and condition3 = -1
and condition4 = -1
order by id asc
LIMIT 2000 OFFSET 50000) b 
where a.id = b.id

先获取主键列表,再通过主键查询目标数据,即使offset很大,也是获取了很多的主键,而不是所有的字段数据,相对而言效率会提升很多。

关于“怎么优化mysql分页时offset过大的Sql”这篇文章就分享到这里了,希望以上内容可以对大家有一定的帮助,使各位可以学到更多知识,如果觉得文章不错,请把它分享出去让更多的人看到。

您可能感兴趣的文档:

--结束END--

本文标题: 怎么优化mysql分页时offset过大的Sql

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

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

猜你喜欢
  • 怎么优化mysql分页时offset过大的Sql
    这篇文章将为大家详细讲解有关怎么优化mysql分页时offset过大的Sql,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。通常分页查询的时候会使用这样的语句:SELEC&...
    99+
    2024-04-02
  • Mysql大数据量分页优化
    Mysql大数据量分页优化 参考文章: MySQL百万级数据量分页查询方法及其优化 MySQL分页查询优化     重点提一下: 在优化分页语句过程中,一定注意查询的语句添加排序字段,一定自己建表实践,...
    99+
    2021-09-09
    Mysql大数据量分页优化
  • MySQL分页Limit的优化过程实战
    前言 在我们使用查询语句的时候,经常要返回前几条或者中间某几行数据,这个时候怎么办呢?不用担心,mysql已经为我们提供了这样一个功能。 SELECT * FROM table LIMIT [o...
    99+
    2024-04-02
  • sql执行时间过长怎么优化
    要优化 SQL 执行时间过长,可以考虑以下几个方面: 索引优化:确保表中的字段有适当的索引,可以加快查询操作。可以使用 `exp...
    99+
    2023-10-26
    sql
  • PostgreSQL中offset...limit分页优化的一些常见手段
    目录发现问题优化手段1:使用游标优化手段2:使用位点总结发现问题 大部分开发人员习惯使用order by offset limit进行分页,使用该方法可能会导致扫描的数据放大,因为offset的行会被扫描。表现就是一般o...
    99+
    2023-05-19
    postgresql offset limit postgresql 分页 sql 分页优化
  • mysql查询时offset过大影响性能的原因是什么
    这篇文章主要介绍了mysql查询时offset过大影响性能的原因是什么,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。准备测试数据表及数据1....
    99+
    2024-04-02
  • mysql大数据分页优化的方法是什么
    在处理大数据分页时,可以通过以下方法来优化MySQL数据库的性能: 使用索引:为查询条件中经常使用的字段添加索引,可以加快查询速...
    99+
    2024-04-09
    mysql
  • MySQL大批量插入数据时怎么优化SQL语句
    这篇文章主要讲解了“MySQL大批量插入数据时怎么优化SQL语句”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“MySQL大批量插入数据时怎么优化SQL语句”...
    99+
    2024-04-02
  • MySQL中怎么优化分页查询
    今天就跟大家聊聊有关MySQL中怎么优化分页查询,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。 分页查询方法:在MySQL中,分页查询一般...
    99+
    2024-04-02
  • MySQL中怎么优化查询分页
    这期内容当中小编将会给大家带来有关MySQL中怎么优化查询分页,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。  MySQL查询分页怎么优化  如果你的数据量有几十万条,用...
    99+
    2024-04-02
  • sqlserver中怎么优化分页存储过程
    sqlserver中怎么优化分页存储过程,相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。代码如下: --代码一DECLARE @cc INT ...
    99+
    2024-04-02
  • 优化mysql大表分页查询翻页的具体方案
    下文我给大家简单讲讲关于优化mysql大表分页查询翻页的具体方案,大家之前了解过相关类似主题内容吗?感兴趣的话就一起来看看这篇文章吧,相信看完优化mysql大表分页查询翻页的具体方案对大家多少有点帮助吧。&...
    99+
    2024-04-02
  • 如何进行SQL优化中的limit分页优化
    如何进行SQL优化中的limit分页优化,相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。示例 表aaaaa中共有2375690数据。优化前的S...
    99+
    2024-04-02
  • SQL优化limit分页的方法是什么
    本篇内容介绍了“SQL优化limit分页的方法是什么”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!&nbs...
    99+
    2024-04-02
  • mysql大数据分页优化的方法有哪些
    MySQL大数据分页优化的方法有以下几种:1. 使用索引:对于大数据表,使用合适的索引可以大大提高分页查询的性能。可以根据实际情况选...
    99+
    2023-08-23
    mysql
  • MySQL的慢SQL怎么优化
    本篇内容主要讲解“MySQL的慢SQL怎么优化”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“MySQL的慢SQL怎么优化”吧!索引类似大学图书馆建书目索引,可以...
    99+
    2024-04-02
  • Mysql深度分页搜索怎么优化
    要优化MySQL深度分页搜索,可以考虑以下几种方法: 使用索引:确保搜索的字段上有适当的索引。对于深度分页搜索,较大的表可能需要...
    99+
    2023-10-28
    Mysql
  • MySql中sql怎么优化
    这篇文章主要介绍了MySql中sql怎么优化,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。一、explain返回列简介1、type常用关键字...
    99+
    2024-04-02
  • 分析SQL优化的limit分页延迟关联
    这篇文章主要介绍“分析SQL优化的limit分页延迟关联”,在日常操作中,相信很多人在分析SQL优化的limit分页延迟关联问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”分析...
    99+
    2024-04-02
  • oracle优化sql的内部过程分析
    本篇内容主要讲解“oracle优化sql的内部过程分析”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“oracle优化sql的内部过程分析”吧!Oracle对sq...
    99+
    2024-04-02
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作