# 分页查询
/*
应用场景:要显示的数据,一页显示不全,需要分页提交sql请求
语法:
select 查询列表
from 表
【join type】表2
on 连接条件
where 筛选条件
group by 分组字段
having 分组后筛选
order by 排序的字段】
limit 【offset,】size; # 如果起始索引为0(第1条记录),0可以省略
# offset,要显示的条目的起始索引(注意:起始索引从0开始,和substring函数中的下标从1开始不同)
# size, 一次显示多少条目
# 前10条,limt 0,10
# 11~20, limit 10,10
特点:
1)limit子句,位于查询语句的最后,执行顺序上也是最后
2)执行顺序: 表-》inner join on -> where -> group by -> having -> select -> order by -> limit
3)公式:
要显示的页数 page 每页的条目数 size
limit (page-1)*size ,size
0 ~ size-1
size ~ 2*size-1
2*size ~ 3*size-1
*/
# 案例1: 查询前5条员工信息
SELECT *
FROM employees
LIMIT 0,5;
# 如果从第1条开始,0可以省略
SELECT *
FROM employees
LIMIT 5;
# 案例2:查询第11条~25条员工信息
SELECT *
FROM employees
LIMIT 10,15;
# 案例3: 有奖金的员工信息,并且工资较高的前10名
SELECT *
FROM employees
WHERE commission_pct IS NOT NULL
ORDER BY salary DESC
LIMIT 10;