搜索引擎优化费用(Limit优化的优化方法有哪些?优化步骤?)

优采云 发布时间: 2022-03-04 15:19

  搜索引擎优化费用(Limit优化的优化方法有哪些?优化步骤?)

  5、Limit查询优化

  limit 常用于分页处理,duration 会与 order by 子句一起使用,所以大部分时间使用 Filesorts 会导致很多 IO 问题。

  例子:

  要求:查询电影id和描述信息,按照主题排序,从第50个序号开始取出5条数据。

  select film_id,description from sakila.film order by title limit 50,5;

  执行结果:

  

  看一下它的执行计划:

  

  对于这样的操作,我们应该使用什么样的优化呢?

  优化步骤一:

  使用索引列或主键进行order by操作,因为众所周知,innodb是按照主键的逻辑顺序进行排序的。可以避免很多IO操作。

  select film_id,description from sakila.film order by film_id limit 50,5;

  

  查看执行计划

  

  那么如果我们从 500 行开始得到 5 条记录,执行计划是什么样的呢?

  explain select film_id,description from sakila.film order by film_id limit 500,5\G

  

  

  随着我们进一步翻页,IO操作会越来越大。如果一张表有几千万行数据,翻页会越来越慢,所以我们需要进一步优化。

  优化步骤二

  记录上一次返回的主键,下次查询时使用主键进行过滤。(注意:数据量大时避免扫描太多记录)

  最后的限制是 50,5 操作,所以我们需要在这个优化过程中使用最后的索引记录值,

<p>select film_id,description from sakila.film where film_id >55 and film_id

0 个评论

要回复文章请先登录注册


官方客服QQ群

微信人工客服

QQ人工客服


线