sql 中的 union 运算符用于合并具有相同列结构的 select 语句的结果集,删除重复行(默认)或保留重复行(使用 all 关键字),以获得一个新的去重结果集。
UNION 在 SQL 中的用法
在 SQL 中,UNION 是一种用于组合两个或多个具有相同列结构的 SELECT 语句的结果集的运算符。它将结果集合并成一个新结果集,其中包含来自所有输入结果集的唯一行。
语法
UNION 语句的一般语法如下:
SELECT_STATEMENT1 UNION [ALL] SELECT_STATEMENT2 [UNION ... SELECT_STATEMENTn]
其中:
- SELECT_STATEMENT1 是第一个 SELECT 语句。
- UNION 是 UNION 运算符。
- [ALL] 是可选的关键字,用于指示是否保留重复行。如果省略,则将删除重复行。
- UNION 可以有多个 SELECT 语句。
用法
UNION 运算符用于以下情况:
- 合并具有相同列结构的结果集:UNION 可以合并来自不同表、视图或子查询的结果集,只要它们具有相同的列顺序和数据类型。
- 消除重复行:默认情况下,UNION 会删除重复行。但是,如果使用了 ALL 关键字,它将保留重复行。
- 创建去重结果集:如果输入结果集可能包含重复行,可以通过使用 UNION ALL 创建一个包含所有行的去重结果集。
示例
以下示例使用 UNION 合并来自两个表的员工信息:
SELECT * FROM employees UNION SELECT * FROM new_hires;
结果集将包含来自 employees 表和 new_hires 表的唯一员工行。
以下示例使用 UNION ALL 保留重复行:
SELECT * FROM employees UNION ALL SELECT * FROM new_hires;
结果集将包含来自 employees 表和 new_hires 表的所有员工行,包括重复行。
以上就是union在sql中的用法的详细内容,更多请关注CTO智库其它相关文章!