广告
返回顶部
首页 > 资讯 > 数据库 >MySQL中如何使用limit
  • 662
分享到

MySQL中如何使用limit

2024-04-02 19:04:59 662人浏览 薄情痞子
摘要

这篇文章将为大家详细讲解有关Mysql中如何使用limit,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。limit语法limit语法支持两个参数,offset和limit

这篇文章将为大家详细讲解有关Mysql中如何使用limit,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。

limit语法

limit语法支持两个参数,offset和limit,前者表示偏移量,后者表示取前limit条数据.

例如:

## 返回符合条件的前10条语句 
select * from user limit 10

## 返回符合条件的第11-20条数据
select * from user limit 10,20

从上面也可以看出来,limit n 等价于limit 0,n.

性能分析

实际使用中我们会发现,在分页的后面一些页,加载会变慢,也就是说:

select * from user limit 1000000,10

语句执行较慢.那么我们首先来测试一下.

首先是在offset较小的情况下拿100条数据.(数据总量为200左右).然后逐渐增大offset.

select * from user limit 0,100 ---------耗时0.03s
select * from user limit 10000,100 ---------耗时0.05s
select * from user limit 100000,100 ---------耗时0.13s
select * from user limit 500000,100 ---------耗时0.23s
select * from user limit 1000000,100 ---------耗时0.50s
select * from user limit 1800000,100 ---------耗时0.98s

可以看到随着offset的增大,性能越来越差.

这是为什么呢?因为limit 10000,10的语法实际上是mysql查找到前10010条数据,之后丢弃前面的10000行,这个步骤其实是浪费掉的.

优化

用id优化

先找到上次分页的最大ID,然后利用id上的索引来查询,类似于select * from user where id>1000000 limit 100.
这样的效率非常快,因为主键上是有索引的,但是这样有个缺点,就是ID必须是连续的,并且查询不能有where语句,因为where语句会造成过滤数据.

用覆盖索引优化

mysql的查询完全命中索引的时候,称为覆盖索引,是非常快的,因为查询只需要在索引上进行查找,之后可以直接返回,而不用再回数据表拿数据.因此我们可以先查出索引的ID,然后根据Id拿数据.

select * from (select id from job limit 1000000,100) a left join job b on a.id = b.id;

耗时0.2秒.

关于“MySQL中如何使用limit”这篇文章就分享到这里了,希望以上内容可以对大家有一定的帮助,使各位可以学到更多知识,如果觉得文章不错,请把它分享出去让更多的人看到。

您可能感兴趣的文档:

--结束END--

本文标题: MySQL中如何使用limit

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

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

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • MySQL中如何使用limit
    这篇文章将为大家详细讲解有关MySQL中如何使用limit,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。limit语法limit语法支持两个参数,offset和limit...
    99+
    2022-10-18
  • Mysql中limit如何使用
    本篇文章给大家分享的是有关Mysql中limit如何使用,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。  LIMIT 子句可以被用于强制 SE...
    99+
    2022-10-18
  • Mysql中如何使用分页limit语句
    Mysql中如何使用分页limit语句,很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所收获。已经为我们提供了这样一个功能。 ...
    99+
    2022-10-18
  • mysql中如何使用limit的高级用法
    本文主要给大家简单讲讲mysql中如何使用limit的高级用法,相关专业术语大家可以上网查查或者找一些相关书籍补充一下,这里就不涉猎了,我们就直奔主题吧,希望mysql中如何使用limit的高级用法这篇文章...
    99+
    2022-10-18
  • MySQL中select limit怎么使用
    在MySQL中,SELECT语句的LIMIT子句用于限制查询结果的数量。使用LIMIT子句的基本语法如下:SELECT 列名...
    99+
    2023-10-19
    MySQL
  • MySQL中Select Limit使用方法
    本篇文章给大家主要讲的是关于MySQL中Select Limit使用方法的内容,感兴趣的话就一起来看看这篇文章吧,相信看完MySQL中Select Limit使用方法对大家多少有点参考价值吧。Th...
    99+
    2022-10-18
  • mysql中limit的使用方法
    本篇文章为大家展示了mysql中limit的使用方法,代码简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。limit语法支持两个参数,offset和limit,前者表示偏移...
    99+
    2022-10-18
  • PHP mysql中使用limit方法
    下文给大家带来有关PHP mysql中使用limit方法内容,相信大家一定看过类似的文章。我们给大家带来的有何不同呢?一起来看看正文部分吧,相信看完PHP mysql中使用limit方法你一定会有所收获。&...
    99+
    2022-10-18
  • mysql中的limit怎么是使用
    这篇文章主要介绍“mysql中的limit怎么是使用”,在日常操作中,相信很多人在mysql中的limit怎么是使用问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”mysql中...
    99+
    2022-10-19
  • mysql中limit的用法
    mysql中limit的用法:使用语法“SELECT * FROM table LIMIT [offset,] rows | rows OFFSET offset”,limit子句在mysql中主要是用来指定select语...
    99+
    2022-10-08
  • 怎么使用MySQL中的select、distinct、limit
    这篇文章主要讲解了“怎么使用MySQL中的select、distinct、limit”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“怎么使用MySQL中的select、distinc...
    99+
    2023-06-25
  • MySQL中如何做好Limit优化
    小编给大家分享一下MySQL中如何做好Limit优化,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!  建议一:灵活使用Limit...
    99+
    2022-10-19
  • MySQL如何使用limit方式实现分页
    这篇文章主要介绍了MySQL如何使用limit方式实现分页,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。一、limit 基本实现方式一般情况...
    99+
    2022-10-18
  • MySQL大数据下Limit使用
      对于一直用Oracle的我,今天可是非常诧异,MySQL中同一个函数在不同数量级上的性能居然差距如此之大。   先看表ibmng(id,title,info)  唯一  id key&...
    99+
    2022-05-22
    mysql sql优化
  • mysql 使用技巧 分页limit
    mysql 分页使用 limit关键字,limit x,y (x代表从哪条数据开始,y代表页面大小。mysql第一条数据在limit计算时索引为0) limit 10   前10条 limit 0,10   从第1条开始的10条...
    99+
    2018-05-16
    mysql 使用技巧 分页limit
  • MySQL之select、distinct、limit的使用
    目录1、简介2、select2.1 查询单个列2.2 查询多个列2.3 查询所有列3、distinct4、limit 1、简介 这篇博客将会非常基础,如果有MySQL经验的...
    99+
    2022-11-12
  • MongoDB中limit和skip如何使用
    这期内容当中小编将会给大家带来有关MongoDB中limit和skip如何使用,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。1.limit()方法语法db.collect...
    99+
    2022-10-18
  • MongoDB 中如何使用Limit与Skip
    这篇文章给大家介绍MongoDB 中如何使用Limit与Skip,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。MongoDB 中Limit与Skip的使用方法详解一 MongoDB L...
    99+
    2022-10-18
  • mysql中limit查询方法怎么使用
    这篇文章主要介绍“mysql中limit查询方法怎么使用”,在日常操作中,相信很多人在mysql中limit查询方法怎么使用问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”mysql中limit查询方法怎么使用...
    99+
    2023-07-05
  • 如何在mysql中优化LIMIT分页
    这篇文章将为大家详细讲解有关如何在mysql中优化LIMIT分页,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。1、优化方法尽可能的使用覆盖索引扫描,而不是查询所有的列。然后根据需要做一次关联...
    99+
    2023-06-15
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作