本文主要介绍“如何在mysql中使用极限”。在日常操作中,相信很多人对于如何在mysql中使用极限有疑问。边肖查阅了各种资料,整理出简单易用的操作方法,希望能帮你解答“如何在mysql中使用极限”的疑惑!接下来,请和边肖一起学习!
在mysql中,limit关键字主要用于指定显示查询结果的记录以及总共显示多少条记录。有三种用法语法“限制初始位置、记录号”、“限制记录号”和“限制记录号偏移初始位置”。
本教程的操作环境:windows7系统,mysql8版本,戴尔G3电脑。
当数据表中有上万条数据时,一次查询表中所有数据会降低数据返回的速度,同时会给数据库服务器带来很大的压力。此时,您可以使用LIMIT关键字来限制返回的查询结果的数量。
LIMIT是MySQL中的一个特殊关键字,用于指定显示查询结果的记录以及总共显示多少条记录。
LIMIT关键字有三种用法:指定初始位置、不指定初始位置和与OFFSET结合使用。
指定初始位置
LIMIT关键字可以指定查询结果将从哪条记录和多少条记录中显示。
LIMIT指定初始位置的基本语法格式,如下所示:
限制初始位置、记录数量,其中“初始位置”表示显示哪个记录;“记录数”是指显示的记录数。第一条记录的位置是0,第二条记录的位置是1。以下记录等等。
注意:LIMIT之后的两个参数都必须是正整数。
例1
在tb_students_info表中,使用LIMIT子句返回第4条记录中的5行记录。SQL语句和运行结果如下。
MySQL select * from b _ students _ infolimit 3,5;
- - - - - - -
| id |姓名| dept _ id |年龄|性别|身高|登录_日期|
- - - - - - -
| 4 |简|1|22|F|162|2016-12-20|
|5|Jim|1|24|M|175|2016-01-15|
| 6 |约翰|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)
由结果可以看到,该语句返回的是从第 4 条记录开始的之后的 5 条记录。LIMIT 关键字后的第一个数字“3”表示从第 4 行开始(记录的位置从 0 开始,第 4 行的位置为 3),第二个数字 5 表示返回的行数。
不指定初始位置
LIMIT 关键字不指定初始位置时,记录从第一条记录开始显示。显示记录的条数由 LIMIT 关键字指定。
LIMIT 不指定初始位置的基本语法格式如下:
LIMIT 记录数
其中,“记录数”表示显示记录的条数。如果“记录数”的值小于查询结果的总数,则会从第一条记录开始,显示指定条数的记录。如果“记录数”的值大于查询结果的总数,则会直接显示查询出来的所有记录。
例 2
显示 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 条记录,说明“LIMIT 4”限制了显示条数为 4。
例 3
显示 tb_students_info 表查询结果的前 15 行,SQL 语句和运行结果如下。
mysql> SELECT * FROM tb_students_info LIMIT 15; +----+--------+---------+------+------+--------+------------+ | 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 | | 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 | | 9 | Thomas | 3 | 22 | M | 178 | 2016-06-07 | | 10 | Tom | 4 | 23 | M | 165 | 2016-08-05 | +----+--------+---------+------+------+--------+------------+ 10 rows in set (0.26 sec)
结果中只显示了 10 条记录。虽然 LIMIT 关键字指定了显示 15 条记录,但是查询结果中只有 10 条记录。因此,数据库系统就将这 10 条记录全部显示出来。
带一个参数的 LIMIT 指定从查询结果的首行开始,唯一的参数表示返回的行数,即“LIMIT n”与“LIMIT 0,n”返回结果相同。带两个参数的 LIMIT 可返回从任何位置开始指定行数的数据。
LIMIT和OFFSET组合使用
LIMIT 可以和 OFFSET 组合使用,语法格式如下:
LIMIT 记录数 OFFSET 初始位置
参数和 LIMIT 语法中参数含义相同,“初始位置”指定从哪条记录开始显示;“记录数”表示显示记录的条数。
例 4
在 tb_students_info 表中,使用 LIMIT OFFSET 返回从第 4 条记录开始的行数为 5 的记录,SQL 语句和运行结果如下。
mysql> SELECT * FROM tb_students_info LIMIT 5 OFFSET 3; +----+-------+---------+------+------+--------+------------+ | 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)
由结果可以看到,该语句返回的是从第 4 条记录开始的之后的 5 条记录。即“LIMIT 5 OFFSET 3”意思是获取从第 4 条记录开始的后面的 5 条记录,和“LIMIT 3,5”返回的结果相同。
到此,关于“mysql中的limit怎么是使用”的学习就结束了,希望能够解决大家的疑惑。理论与实践的搭配能更好的帮助大家学习,快去试试吧!若想继续学习更多相关知识,请继续关注网站,小编会继续努力为大家带来更多实用的文章!
内容来源网络,如有侵权,联系删除,本文地址:https://www.230890.com/zhan/131612.html