位置: 编程技术 - 正文

详解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算法)

  • 什么是企业的命脉
  • 税收要素的灵魂
  • 一般纳税人改成小规模纳税人
  • 城镇土地使用税减免税政策
  • 无金额的合同印章有效吗
  • 增值发票每月上报是怎么个程序吗
  • 发票专用章章号是什么
  • 几个月以前发现便血是肠癌吗
  • 煤炭企业补偿费会计分录
  • 长期借款业务的思维导图
  • 个人设备卖给公司
  • 非货物贸易核查项下
  • 新公司做财务
  • 职工暖气费报销算福利
  • 代扣代缴城建税可以享受六税两费
  • 快递快件丢失
  • 租的办公室要交税么
  • 建安税由谁承担
  • 利息收入属于现金流入吗
  • 一般纳税人开培训发票税率是多少
  • 注册公司税号怎么办理
  • 劳务派遣用工工资标准
  • 资产总额是资产负债表中的哪个数
  • 如何调整账务
  • 旅行社差额征税税率5%
  • win10专业版如何激活
  • 税务局手续费返还
  • linux 文件夹压缩
  • .info是什么意思?
  • 华硕11代笔记本装win10
  • 小规模减免的附件有哪些
  • 残差网络中的残差指的是什么
  • excel if统计
  • python3 静态方法
  • python兑换美元
  • 代扣代缴的境外收入企业所得税可以抵减吗
  • 咨询服务费怎么交税
  • python中numpy.empty()函数的用法
  • 计提工资的时候跟发放的时候不一样怎么办
  • 研发费用计入什么表
  • 个体户怎么网上变更法人
  • 在计算应纳税所得额时,下列支出不得扣除
  • SQL Server 2008 R2 应用及多服务器管理
  • sql2000数据迁移到2008
  • 房地产企业拆迁还房会计处理
  • 营运资金周转率是什么指标
  • 清洁费用属于哪个会计科目
  • 消费税计税分录
  • 工程设备公司经营范围
  • 用白纸写的收据怎么入帐?
  • 企业研发费用包括工资支出吗
  • 收到股东投资款需要交什么税
  • 高新技术企业一定是先进制造业吗
  • 行政事业单位会计风险来源于日常的会计活动
  • 外购商品科目设置
  • 金蝶软件kis标准版操作流程
  • 商业承兑汇票过期了怎么办
  • 暂估入账后费用怎么做账
  • 业务招待费可以结转下年抵扣吗
  • 发票被认证
  • 企业注销以后
  • WUSB54GS.exe - WUSB54GS是什么进程
  • win7系统只有一个鼠标箭头然后重启
  • ubuntu 无法正常启动
  • mac 特殊符号
  • windows自带视频
  • 用jquery制作网页
  • Build Qt5.3.1 for Freescale I.MX6Q based Linux 3.0.15
  • javaScript 事件绑定、事件冒泡、事件捕获和事件执行顺序整理总结
  • js中的filter方法和map方法
  • Python下的慢
  • JavaScript+html5 canvas实现图片破碎重组动画特效
  • javascript开发自学
  • 菜鸟教程安卓
  • java stringapi
  • unity3d Human skin real time rendering with blood and water drop effect真实模拟人皮实时渲染之血液和水珠掉落效果
  • 安卓手机图片缓存在哪
  • 国税局招录条件
  • 新疆医保哪里查
  • 关于个体户的个人所得税的最新政策法规
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设