MySQL入门 DQL语言之十:分页查询和查询sql的执行顺序

 MySQL入门 DQL语言之十:分页查询和查询sql的执行顺序

#8.分页查询[重点]
/*
应用场景:当我要显示的数据,一页显示不全,需要分页提交sql请求
语法:
    select 查询列表
    from 表
    【inner type join 表2
    on 连接条件
    where 筛选条件
    group by 分组字段
    having 分组后的筛选
    order by 排序的字段】
    limit offset,size;
    
    offset要显示的条目的起始索引(起始索引从0开始)
    size 要显示的条目个数
    

特点:
    ①limit语句放在查询语句的最后,执行顺序也是在最后
  
 ②公式【重点】
    要显示的页数page,每页的条目数size
    select 查询列表
    from 表
    limit (page-1)*size,size;
    
    size = 10
    page    offset
    1    0
    2    10
    3    20
*/
#案例1:查询前五条员工信息
SELECT * FROM employees LIMIT 0,5;
SELECT * FROM employees LIMIT 5;#offset如果为0,可以省略


#案例2:查询第11条--第25条
SELECT * FROM employees LIMIT 10,15;

#案例3:有奖金的员工信息,并且工资较高的前10名显示出来
SELECT * FROM employees 
WHERE commission_pct IS NULL
ORDER BY salary DESC
LIMIT 0,10; 


 【补充】:语句的执行顺序,且在执行每一步的时候会生成一个虚拟表,然后根据条件进行筛选。最后在进行排序和选择显示条目数;

MySQL入门 DQL语言之十:分页查询和查询sql的执行顺序_第1张图片

你可能感兴趣的:(DB数据库)