MySQL学习-数据查询语言(DQL)六之分页查询和联合查询(union)

九丶分页查询

9-1丶分页查询基本概念
应用场景:当要显示的数据,一页显示不全,需要分页提交sql请求

语法:
    select 查询列表
    from 表
    【join 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  
    1   0
    2   10
    3   20
9-2丶分页查询案例
案例1:查询前五条员工信息
SELECT * FROM  employees LIMIT 0,5;
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 ;

十丶联合查询

10-1丶联合查询基本概念
union 联合 合并:将多条查询语句的结果合并成一个结果

语法:
查询语句1
union
查询语句2
union
...

应用场景:
要查询的结果来自于多个表,且多个表没有直接的连接关系,但查询的信息一致时

特点:★
1、要求多条查询语句的查询列数是一致的!
2、要求多条查询语句的查询的每一列的类型和顺序最好一致
3、union关键字默认去重,如果使用union all 可以包含重复项
10-2丶联合查询案例
#引入的案例1:查询部门编号>90或邮箱包含a的员工信息
SELECT * FROM employees WHERE email LIKE '%a%' OR department_id>90;;

SELECT * FROM employees  WHERE email LIKE '%a%'
UNION
SELECT * FROM employees  WHERE department_id>90;


#案例2:查询中国用户中男性的信息以及外国用户中年男性的用户信息
SELECT id,cname FROM t_ca WHERE csex='男'
UNION ALL
SELECT t_id,tname FROM t_ua WHERE tGender='male';

UNION结果

结果
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • 十月的秋,是凉的。连绵的雨,夹杂着初秋的景,凉意了叶。微浮的风,红了叶。是否叶感到了凉意的景。 雨后的秋,是彩的。...
    浮生梦华阅读 2,972评论 1 6
  • 初出见你, 人潮中独自拥挤, 千山万水, 却依然相遇。 球场上挥汗如雨, 为此着迷, 我却唯独懂你的压抑。 习惯了...
    艺人崔是小可爱阅读 1,486评论 0 0
  • 前几天,docker入门是在aws的ubuntu机器上演示的,下面介绍如何在macOS安装Docker。 系统要求...
    若与阅读 20,432评论 6 18

友情链接更多精彩内容