UNION 和 UNION ALL 作用

联合查询 union ,union all

对于union查询,就是把多次查询的结果合并起来,形成一个新的查询结果集。

select 字段列表 from 表A ,,,

select 字段列表 from 表B .....

复制代码
查询语句1
UNION
查询语句2;

查询语句1
UNION ALL
查询语句2;

1. 最简单示例(合并两个部门查询)

sql

复制代码
select dept.id, dept.name from dept where dept.id = 1
union
select dept.id, dept.name from dept where dept.id = 2;

sql

复制代码
select dept.id, dept.name from dept where dept.id = 1
union all
select dept.id, dept.name from dept where dept.id = 2;

2. 合并不同表的结构相同数据

比如把员工姓名 和 部门姓名 放一列展示

sql

复制代码
select emp.name from emp
union
select dept.name from dept;

sql

复制代码
select emp.name from emp
union all
select dept.name from dept;

3. 多表查询 + UNION 组合

sql

复制代码
select emp.name, dept.name
from emp
inner join dept
on emp.dept_id = dept.id
where dept.name = '研发部'

union

select emp.name, dept.name
from emp
inner join dept
on emp.dept_id = dept.id
where dept.name = '市场部';
复制代码
-- 查询薪资<5000 并且年龄大于50 的员工。
select * from emp33 where salary <5000 and age>50;


-- 查询薪资低于5000 的员工,和年龄大于50 岁的员工的全部查询出来
select * from emp33 where salary <5000
union all
select * from emp33 where age>50;

union all有重复 会将全部的数据直接合并在一起,

union 会对合并之后的数据去重。

相关推荐
海兰2 小时前
【数据库】tdsql(mysql8.0)优化思考三
数据库·redis
煎饼学大模型3 小时前
Agent 的“大脑-手“解耦架构:当推理层和工具执行层各自独立演进
数据库·人工智能·oracle·架构·agent
Lucifer三思而后行4 小时前
Veeam 备份 Oracle RAC 失败,是归档删除脚本的锅!
sql
muddjsv6 小时前
SQLite数据库文件机制详解:journal、wal、shm文件作用与备份避坑
数据库·sqlite
吴声子夜歌7 小时前
MongoDB 4.2——应用程序设计
数据库·mongodb
数字新视界7 小时前
动环监控可视化在数据中心管理中的应用与实践解析
数据库·物联网·解决方案·动环监控·大榕树
极地野狼 音乐哔哔7 小时前
数据库备份恢复的原理实践
数据库
互联网中的一颗神经元8 小时前
小白python入门 - 25. SQL 与表设计入门
数据库·python·sql
ttwuai8 小时前
AI 生成后台改数据后,操作日志别只记按钮:Go + MySQL 怎么验
数据库·人工智能·mysql·golang
KaMeidebaby8 小时前
卡梅德生物技术快报 | 核酸适配体文库测序:核酸适配体文库测序的技术原理、实验流程与数据解析
前端·网络·数据库·人工智能·算法