位置: 编程技术 - 正文

深入分析Mysql中limit的用法(mysql深入解析)

编辑:rootadmin

推荐整理分享深入分析Mysql中limit的用法(mysql深入解析),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:mysql深入理解,mysql深度解析,mysql深入理解,mysql的lsn,mysqlmgr深入理解,mysqlmgr深入理解,mysqlmgr深入理解,mysql深入理解,内容如对您有帮助,希望把文章链接给更多的朋友!

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

SELECT * FROM table LIMIT [offset,] rows | rows OFFSET offsetLIMIT 子句可以被用于强制 SELECT 语句返回指定的记录数。LIMIT 接受一个或两个数字参数。参数必须是一个整数常量。如果给定两个参数,第一个参数指定第一个返回记录行的偏移量,第二个参数指定返回记录行的最大数目。初始记录行的偏移量是 0(而不是 1): 为了与 PostgreSQL 兼容,MySQL 也支持句法: LIMIT # OFFSET #。mysql> SELECT * FROM table LIMIT 5,; // 检索记录行 6-//为了检索从某一个偏移量到记录集的结束所有的记录行,可以指定第二个参数为 -1: mysql> SELECT * FROM table LIMIT ,-1; // 检索记录行 -last.//如果只给定一个参数,它表示返回最大的记录行数目: mysql> SELECT * FROM table LIMIT 5; //检索前 5 个记录行//换句话说,LIMIT n 等价于 LIMIT 0,n。注意limit 和limit 9,1的不同:例如:1.

2.

同样是取条后条记录,第1句快还是第2句快&#;第1句是先取了前条记录,取其中最大一个ID值作为起始标识,然后利用它可以快速定位下条记录第2句择是仅仅取条记录后1条,然后取ID值作起始标识定位下条记录第1句执行结果. rows in set (0.) sec第2句执行结果. rows in set (0.) sec其实第2句完全可以简化成:

直接利用第条记录的ID,不用经过Max运算,这样做理论上效率因该高一些,但在实际使用中几乎看不到效果,因为本身定位ID返回的就是1条记录,Max几乎不用运作就能得到结果,但这样写更清淅明朗,省去了画蛇那一足.

但不管是实现方式是存贮过程还是直接代码中,瓶颈始终在于MS-SQL的TOP总是要返回前N个记录,这种情况在数据量不大时感受不深,但如果成百上千万,效率肯定会低下的.相比之下MySQL的limit就有优势的多,执行:

的结果分别是:

深入分析Mysql中limit的用法(mysql深入解析)

rows in set (0.) sec1 row in set (0.) sec

而MS-SQL只能用Select Top ID From cyclopedia 执行时间是ms,执行同样的操作时间也不及MySQL的ms.limit的offset(偏移量)用于记录较多的时候,记录较少时,偏移offset较小,直接使用limit较优。offset越大,后者越优。

1、offset比较小的时候。

多次运行,时间保持在0.-0.之间

多次运行,时间保持在0.-0.之间,主要是0.结论:偏移offset较小的时候,直接使用limit较优。这个显示是子查询的原因。

2、offset大的时候。

select * from yanxue8_visit limit ,多次运行,时间保持在0.左右

多次运行,时间保持在0.左右,只有前者的1/3。可以预先offset越大,后者越优。mysql> SELECT * FROM table LIMIT ,-1; // 检索记录行 -last. //如果只给定一个参数,它表示返回最大的记录行数目

以上所述就是本文的全部内容了,希望大家能够喜欢。

请您花一点时间将文章分享给您的朋友或者留下评论。我们将会由衷感谢您的支持!

MySQL之终端Terminal(dos界面)管理数据库、数据表、数据的基本操作 MySQL有很多的可视化管理工具,比如mysql-workbench和sequel-pro-。现在我写MySQL的终端命令操作的文章,是想强化一下自己对于MySQL的理解,总会比使用图形化

多种不同的 MySQL 的 SSL 配置 在这篇博客的帖子里,我将会描述不同的使用MySQL数据库的SSL配置方法。SSL给了你什么你可以通过互联网使用MySQL复制特性(replication)或者通过互联网

MySQL服务器连接过程浅析 mysqld是MySQL服务器端主进程,可以说mysqld是MySQL的真正核心,一切工作都是围绕mysqld进程进行的。所以要解剖mysql这个庞然大物,mysqld的代码是最好的突

标签: mysql深入解析

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

上一篇:浅谈mysql的中文乱码问题(mysql数据库中文)

下一篇:MySQL之终端Terminal(dos界面)管理数据库、数据表、数据的基本操作(终端运行mysql)

  • 应纳税所得额怎么计算应纳税额
  • 车辆购置税如何计算
  • 计提坏账部分收入怎么算
  • 营业执照办理税务登记需要什么资料
  • 公司买车计算方式
  • 注册公司认缴资本不缴可以吗
  • 企业的车辆因违法停放
  • 防伪税控系统中的设备包括哪些
  • 一般纳税人增值税申报操作流程
  • 简易计税的销项税怎么处理
  • 酒店里的水电费怎么收
  • 商品房预售期一般多久
  • 什么时候编制原始凭证分割单?
  • 餐费可以入成本吗
  • 增值税什么情况下可以退税
  • 专票怎么提交不上去
  • 国家税务总局公告2023年第1号
  • 银行开户存入的钱怎么取
  • 售后回租业务的会计分录
  • 进项税额转出后再转入怎么做账
  • 转正工资和试用工资区别
  • 差额征税做账分录
  • 房产公司增值税怎么交
  • 固定资产报废清理账务处理
  • 委托检验报告能否作为处罚依据
  • 贸易公司出口是什么意思
  • 电脑右下角弹出网页没有×怎么关闭
  • php封装composer包
  • 为员工租房租金怎么入账
  • 公司给客户报销费用可以吗
  • 最小的摄像头是多大
  • 稿酬所得怎么交所得税
  • 购买二手车要缴税吗
  • 税务稽查的进项税怎么处理
  • 微信公众号开发php源码
  • 遮天传游戏视频
  • 微软的人工智能ChatGPT
  • 【历史上的今天】4 月 7 日:IBM System/360 问世;以太网的发明者诞生;第一个 RFC 文档发布
  • 报表中的盈余公积怎么算
  • 个人抬头的发票可以入账吗
  • 缴纳工会筹备金会计分录怎么写
  • 进项税抵扣的分录怎么做
  • 先付款后收到发票
  • 收到投资款如何声明
  • 如何调整以前年度库存
  • 委托加工物资受托发的会计处理
  • 垃圾清运费的收费标准乱要钱怎么办
  • 电子承兑汇票是到期日前10天提示承兑吗
  • 基本户转账到法院怎么转
  • 进口关税如何交
  • 理财产品产生的收益会成为本金吗为什么
  • 公司员工报销车费还需要签协议吗
  • 银行汇票可用于异地结算吗
  • 公司建立初期做账
  • centos5.7
  • mac安装mysql没看见初期密码
  • win10自带的音乐播放器groove如何设置
  • 拨开层层迷雾是什么歌
  • ubuntu火狐浏览器怎么改成中文
  • alpine安装apt
  • freebsd书籍
  • window10打补丁
  • OS X Yosemite系统下载失败怎么办?OS X 10.10下载错误解决方法
  • 装系统无法选择
  • win8.1 微软拼音设置
  • windows config文件
  • iis安装步骤 windows server 2008
  • js页面点击怎么随机生成图片
  • 如何获取system权限win10
  • android怎么真机调试
  • linux读出文件
  • 举例讲解水生花卉栽培管理
  • python简要说明读取文件的一般流程
  • JavaScript中的数据类型分为两大类
  • javascript学习指南
  • 基于JAVASCRIPT实现的可视化工具是
  • 四川税局官网发票
  • 境外抵免限额如何申请
  • 根据消费税暂行条例的规定,纳税人自产自用
  • 农民专业合作社章程完整版
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设