在使用 MySQL SELECT 语句时往往返回的是所有匹配的行,有些时候我们仅需要返回第一行或者前几行,这时候就需要用到 MySQL LIMT 子句。

基本的语法格式如下:

<LIMIT> [<位置偏移量>,] <行数>

LIMIT 接受一个或两个数字参数。参数必须是一个整数常量。如果给定两个参数,第一个参数指定第一个返回记录行的偏移量,第二个参数指定返回记录行的最大数目。

第一个参数“位置偏移量”指示 MySQL 从哪一行开始显示,是一个可选参数,如果不指定“位置偏移量”,将会从表中的第一条记录开始(第一条记录的位置偏移量是 0,第二条记录的位置偏移量是 1,以此类推);第二个参数“行数”指示返回的记录条数。

【实例 1】显示 tb_students_info 表查询结果的前 4 行,输入的 SQL 语句和执行结果如下所示。

  mysql> SELECT * FROM tb_students_info LIMIT 4;  +----+-------+---------+------+------+--------+------------+  | id | name  | dept_id | age  | sex  | height | login_date |  +----+-------+---------+------+------+--------+------------+  |  1 | Dany  |       1 |   25 | F    |    160 | 2015-09-10 |  |  2 | Green |       3 |   23 | F    |    158 | 2016-10-22 |  |  3 | Henry |       2 |   23 | M    |    185 | 2015-05-31 |  |  4 | Jane  |       1 |   22 | F    |    162 | 2016-12-20 |  +----+-------+---------+------+------+--------+------------+  4 rows in set (0.00 sec)

由结果可以看到,该语句没有指定返回记录的“位置偏移量”参数,显示结果从第一行开始,“行数”参数为 4,因此返回的结果为表中的前 4 行记录。

若指定返回记录的开始位置,则返回结果为从“位置偏移量”参数开始的指定行数,“行数”参数指定返回的记录条数。

【实例 2】在 tb_students_info 表中,使用 LIMIT 子句返回从第 4 条记录开始的行数为 5 的记录,输入的 SQL 语句和执行结果如下所示。

  mysql> SELECT * FROM tb_students_info LIMIT 3,5;  +----+-------+---------+------+------+--------+------------+  | id | name  | dept_id | age  | sex  | height | login_date |  +----+-------+---------+------+------+--------+------------+  |  4 | Jane  |       1 |   22 | F    |    162 | 2016-12-20 |  |  5 | Jim   |       1 |   24 | M    |    175 | 2016-01-15 |  |  6 | John  |       2 |   21 | M    |    172 | 2015-11-11 |  |  7 | Lily  |       6 |   22 | F    |    165 | 2016-02-26 |  |  8 | Susan |       4 |   23 | F    |    170 | 2015-10-01 |  +----+-------+---------+------+------+--------+------------+  5 rows in set (0.00 sec)

由结果可以看到,已经为大家精心准备了大数据的系统学习资料,从Linux-Hadoop-spark-......,需要的小伙伴可以点击该语句指示 MySQL 返回从第 4 条记录行开始的之后的 5 条记录,第一个数字“3”表示从第 4 行开始(位置偏移量从 0 开始,第 4 行的位置偏移量为 3),第二个数字 5 表示返回的行数。

所以,带一个参数的 LIMIT 指定从查询结果的首行开始,唯一的参数表示返回的行数,即“LIMIT n”与“LIMIT 0,n”等价。带两个参数的 LIMIT 可返回从任何位置开始的指定行数的数据。

返回第一行时,位置偏移量是 0。因此,“LIMIT 1,1”返回第 2 行,而不是第 1 行。

注意:MySQL 5.7 中可以使用“LIMIT 4 OFFSET 3”,意思是获取从第5条记录开始的后面的3条记录,和“LIMIT 4,3”返回的结果相同。

MySQL LIMIT:限制查询结果的记录条数相关推荐

  1. mysql统计去重记录数量_MySQL分组后,如何统计记录条数

    MySQL分组后,统计记录条数的方法:1.统计记录条数,代码为[SELECT num,count(*) AS counts from test_a GROUP BY num]:2.对num去重后的数量 ...

  2. mybatis查询记录条数

    这几天在学SSM框架,今天在SSM框架中根据某个条件查询mysql数据库中的记录条数,碰到一些问题,记录一下 User.xml <select id="userNameValidate ...

  3. mongodb count查询记录条数

    2019独角兽企业重金招聘Python工程师标准>>> count查询记录条数 使用count()方法查询表中的记录条数,例如,下面的命令查询表users的记录数量: db.user ...

  4. DBA用于查询当前数据库表格记录条数的脚本

    本文中介绍的参考脚本用于查询当前数据库中所有表格的记录条数, 并将结果存入TableInfo表中,不会删除以备用户再做处理与分析.最后请各位读者删除此表. 脚本示例: if exists (selec ...

  5. mongodb 高级查询 统计记录条数

    使用count()方法查询表中的记录条数,例如,下面的命令查询表users的记录数量: db.users.find().count();

  6. sql 统计记录条数后 打印出所有记录_用SQL完成购买行为分析(下篇II)

    (接<用SQL完成购买行为分析(下篇I)>内容) 12)查询首条记录为fav,总记录条数为14的记录.将前面getNum(3)红框处替换为12,运行getNum(14)得到第2条记录的数量 ...

  7. C#操作数据库,将其查查出来的记录条数显示在winform窗体中的方法之一

    1 //1.数据库链接的基本操作(略) 2 //2.创建对象函数(关键部分) 3 sqlConn.Open(); 4 //初始化定义记录条数 5 int n = 0; 6 object obj = s ...

  8. spring-data-mongodb 获得记录条数

    方法一 . 查询出list然后获取size,当记录条数多的时候这个方案不可取... 方法二 . 使用mongoTemplate.count查询出记录条数 方法三 . 使用Aggregation,聚合出 ...

  9. kafka查看topic中的数据_实战!Kafka Manager能统计出Topic中的记录条数吗?

    问题描述 今天现场实施同事说Kafka Manager上显示有3500w条记录,但使用我们的平台落地后,一统计发现只有2200w条记录,这是不是说明我们的平台存在丢数据的可能. 经了解,对接方是通过如 ...

最新文章

  1. React的组件模式
  2. python+Tesseract-OCR实现图片识别(只适合新手)
  3. 贪吃蛇程序不要白不要,一个赞就够了
  4. WordPress 简洁好看hankin透明主题
  5. 洛谷 P3382 【模板】三分法
  6. 读取无线手柄数据_全透外形,优秀手感,双平台通吃:倍思Switch无线手柄
  7. pythoniris补全缺失值_机器学习iris数据集导入
  8. 让你的网站用上炫酷的中文字体
  9. 高密集型工业体系步履蹒跚
  10. 软件需求工程2018期末题
  11. NepCTF2022
  12. 你拥有的知识比你想象中更有意义和价值
  13. VO、 PO、DO、DTO、 BO、 QO、DAO、POJO定义
  14. 旗正规则引擎的产品设计
  15. 笔记本购机测试软件大全
  16. 前端vue视频vue-video-player插件总结知识点案例(带源码)
  17. 用python每日更换“必应图片”为“桌面壁纸”
  18. ArcGIS总结——矢量数据分析之网络分析(上)
  19. 红杉中国沈南鹏:不要投钱给第三次创业的
  20. Winform自定义控件 —— 水印文本框

热门文章

  1. 成功解决ValueError: DataFrame.dtypes for label must be int, float or bool
  2. 成功解决graphviz\backend.py, line 162, in pipe raise ExecutableNotFound(args) graphviz.backend.Executab
  3. 成功解决AttributeError: module 'numpy' has no attribute 'equal'
  4. ML与math:机器学习与高等数学基础概念、代码实现、案例应用之详细攻略——基础篇
  5. MySQL的Limit详解(转载)
  6. linux系统如何进行录屏
  7. CentOS7使用阿里云镜像安装Mongodb
  8. mac 下launchpad超级慢的问题
  9. 设计模式总结之Builder Pattern(建造者模式)
  10. 蓝牙4.0技术分析1-广播者角色