位置: 编程技术 - 正文

详解MySQL的limit用法和分页查询语句的性能分析

编辑:rootadmin

推荐整理分享详解MySQL的limit用法和分页查询语句的性能分析,希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:,内容如对您有帮助,希望把文章链接给更多的朋友!

limit用法

在我们使用查询语句的时候,经常要返回前几条或者中间某几行数据,这个时候怎么办呢?不用担心,mysql已经为我们提供了这样一个功能。

LIMIT 子句可以被用于强制 SELECT 语句返回指定的记录数。LIMIT 接受一个或两个数字参数。参数必须是一个整数常量。如果给定两个参数,第一个参数指定第一个返回记录行的偏移量,第二个参数指定返回记录行的最大数目。初始记录行的偏移量是 0(而不是 1): 为了与 PostgreSQL 兼容,MySQL 也支持句法: LIMIT # OFFSET #。

为了检索从某一个偏移量到记录集的结束所有的记录行,可以指定第二个参数为 -1:

如果只给定一个参数,它表示返回最大的记录行数目:

换句话说,LIMIT n 等价于 LIMIT 0,n。

Mysql的分页查询语句的性能分析

MySql分页sql语句,如果和MSSQL的TOP语法相比,那么MySQL的LIMIT语法要显得优雅了许多。使用它来分页是再自然不过的事情了。

详解MySQL的limit用法和分页查询语句的性能分析

最基本的分页方式:

在中小数据量的情况下,这样的SQL足够用了,唯一需要注意的问题就是确保使用了索引:举例来说,如果实际SQL类似下面语句,那么在category_id, id两列上建立复合索引比较好:

子查询的分页方式:

随着数据量的增加,页数会越来越多,查看后几页的SQL就可能类似:

一言以蔽之,就是越往后分页,LIMIT语句的偏移量就会越大,速度也会明显变慢。

此时,我们可以通过子查询的方式来提高分页效率,大致如下:

JOIN分页方式

经过我的测试,join分页和子查询分页的效率基本在一个等级上,消耗的时间也基本一致。 explain SQL语句:

为什么会这样呢?因为子查询是在索引上完成的,而普通的查询时在数据文件上完成的,通常来说,索引文件要比数据文件小得多,所以操作起来也会更有效率。

实际可以利用类似策略模式的方式去处理分页,比如判断如果是一百页以内,就使用最基本的分页方式,大于一百页,则使用子查询的分页方式。

标签: 详解MySQL的limit用法和分页查询语句的性能分析

本文链接地址:https://www.jiuchutong.com/biancheng/349909.html 转载请保留说明!

上一篇:MAC下Mysql5.7.10版本修改root密码的方法(mysql mac下载)

下一篇:超简单的qps统计方法(推荐)(qpso算法)

  • 增值税的专用发票含税吗
  • 印花税申报怎么采集
  • 成立一般纳税人公司
  • 小规模企业免征增值税如何做账
  • 投资收益收到的现金小于投资收益
  • 附加税已扣款还要季度申报吗
  • 进项税额结转不结转
  • 其他综合收益税后
  • 蓝字发票有认证的吗
  • 待清算商户款项怎么做账
  • 纳税人选择简易办法一经选择
  • 航天金税服务费诈骗
  • 银行理财产品赎回
  • 公司支付收益权转让怎么做账?
  • 重新建账要以前的期初余额吗
  • 租入房产改建增值税谁交
  • 营改增后出售以前年度的固定资产怎么申报?
  • 最新房产税费
  • 建筑企业与建设局的关系
  • 金税盘费用到期
  • 企业申请资产损失需要提供哪些确认证据?
  • 城市维护建设税的计税依据是什么
  • 应收账款减值准备可以税前扣除吗
  • 以前年度利润和当年净利润
  • 通讯费 个税
  • web投票系统源码
  • php parse_url
  • php中??
  • linux多网卡聚合
  • 企业租用个人房屋
  • 销售货物价格明显偏低且无正当理由
  • 商品先入库后得发票如何做账
  • yolov5添加注意力机制真的有用吗?
  • 退休返聘人员算临时工吗
  • 公司破产清算应先还银行还是股东
  • vue前端常见面试题
  • mkv视频制作
  • 固定资产清理属于非流动资产吗
  • 发票去税务局认证了就可以直接抵扣了吗
  • 无形资产转让手续怎么办
  • 织梦收费5800的解决方法
  • 应付职工薪酬期末余额是什么意思
  • 金税四期对建筑企业的影响
  • PostgreSQL教程(十四):数据库维护
  • 非财政补助结余分配属于什么科目
  • 个人独资企业所得税申报流程
  • 只收加工费
  • 房地产企业建成后先出租的房地产
  • 工会会计固定基金
  • 资产减值损失是什么意思
  • 固定资产以前年度多计提怎么办
  • 销售货款未收到会计分录
  • 汇算清缴所得税的账务处理会计分录
  • 工业增加值计算表(按生产法)
  • 工程保险费属于二类费
  • 费用化是计入当期损益吗
  • 2019年新政府会计准则解读
  • 现金日记账金额怎么填写
  • 增值税纳税申报表在哪里打印
  • 什么是计提坏账准备
  • centos6.2安装教程
  • centos 安装选择
  • 硬盘安装在哪里
  • win10 电池报告
  • wp_official_1.1.3.apk软件下载
  • mac地图怎么标记多个位置
  • linux find命令查找文件名
  • svchos1.exe - svchos1是什么教程 有什么作用
  • centos怎么设置
  • win7系统监控
  • linux系统默认启动级别
  • cocos2dx开发的游戏
  • python 爬取
  • js中的隐式类型转换
  • keycode输入cat
  • js使用类
  • 拼多多发票哪里申请开票
  • 弥补亏损怎么算
  • 增值税进项发票如何做账
  • 中国税务客服工作时间
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设