含义
union:联合、合并,将多条查询语句的结果合并成一个结果
案例引入:查询部门编号>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;
语法
查询语句1
union 【all】
查询语句2
union 【all】
应用场景
当要查询的结果来自于多张表,且多张表之前没有直接的连接关系,但查询的信息一致时。
特点
1、要求多条查询语句的查询列表是一致的
2、要求多条查询语句的查询的每一列的类型、顺序最好一致
3、union关键字默认去重,如果使用union all可以包含重复项
意义:
- 将一条比较复杂的查询语句拆分成多条语句
- 使用于查询多个表的时候,查询的列基本是一致的。
案例:表1: t_ca表
id | cname | csex |
---|---|---|
1 | 韩梅梅 | 女 |
2 | 李雷 | 男 |
3 | 张三 | 男 |
表2:t_ua
id | tName | tGender |
---|---|---|
1 | john | male |
2 | lily | fmale |
3 | Emily | fmale |
4 | jack | male |
5 | rose | fmale |
查询中国用户男性信息和外国用户男性信息
select cname,csex from t_ca where csex="男"
union
select tName,tGender from t_ua where tGender="male";