第十二节:联合查询

一、联合查询

  1、联合查询

    union:联合,合并,将多条查询语句的结果合并成一个结果

  2、语法格式

查询语句1
union 【all】
查询语句2
union 【all】
...

    应用场景:

    ① 将一条比较复杂的查询语句拆分成多条语句;

    ② 要查询的结果来自于多个表,且多个表没有直接的连接关系,但查询的信息一致时。

  3、特点

    ① 要求多条查询语句的查询列表是一致的;

    ② 要求多条查询语句的每一列的类型和顺序最好一致;

    ③ union 关键字是自动去重的,如果使用 union all 会包含重复项;

二、案例

  1、查询部门编号 > 90 或者 邮箱包含 a 的员工信息

    方式一:普通条件查询

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

  

    方式二:使用联合查询

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

  

  2、查询中国用户中男性的信息以及外国用户男性的用户信息(查询结果来自多表,表之间没有联系)

SELECT * FROM t_ca WHERE sex = '男'
UNION
SELECT * FROM t_ua WHERE gender = '男'

    注意:不适用 all 关键字去自动去重,使用 all 会显示重复的数据。

 

原文地址:https://www.cnblogs.com/niujifei/p/14888702.html