简单介绍
/*
语法
...........
limit 【offset,】 size
参数说明
limit:关键字
offset:起始索引,从0开始
size:要显示的数目
注意:
1. 参数必须是整数常量
2. 当第二个参数为 -1 时,MySQL会报错
SELECT * FROM admin LIMIT 1, -1 # 从第2个到最后一个
这样的语句在以前是可以执行的,但是因为这种写法本身就是错的
所以MySQL对此作出了修复,现在已不可以执行该操作
替代方法是第二个参数 用一个较大的正数代替
如:SELECT * FROM admin LIMIT 1, 99999
*/
参数比较的测试
# 1. 一个参数(len):表示只查询结果的前len个
# 即 limit n 等于查询 limit 0 len (从第0个开始,一共查n个)
SELECT * FROM admin LIMIT 1; # 只查询结果的前1个
SELECT * FROM admin LIMIT 5; # 只查询结果的前5个
# 2. 两个参数(n, len):表示从第n个开始,一共查len个
SELECT * FROM admin LIMIT 0, 9; # 查第一个
SELECT * FROM admin LIMIT 1, 5; # 从索引为1的开始,一共查5个
# 3. 从指定位置到最后一个:第二个参数设置大一点
SELECT * FROM admin LIMIT 3, 99999
SELECT * FROM admin LIMIT 1, 99999
案例
# 案例1 查询前6条员工信息
SELECT *
FROM `employees`
LIMIT 6; # 等价于:limit 0, 6
# 案例2 查询第11-第25
SELECT *
FROM `employees`
LIMIT 10, 15;
# 案例3:有奖金,且工资较高的前十名
SELECT *
FROM `employees`
WHERE `commission_pct` IS NOT NULL
ORDER BY salary DESC
LIMIT 10;