oracle union 与union all
时间: 2023-08-16 09:14:29 浏览: 101
在Oracle中,UNION和UNION ALL是用于合并查询结果的两个关键字。
- UNION:UNION操作符用于合并两个或多个SELECT语句的结果集,并去除重复的行。它的基本语法如下:
```
SELECT column1, column2, ...
FROM table1
UNION
SELECT column1, column2, ...
FROM table2;
```
UNION会将两个SELECT语句的结果集合并成一个结果集,并去除重复的行。要求两个SELECT语句中的列数和列类型必须对应匹配。
- UNION ALL:UNION ALL操作符也用于合并两个或多个SELECT语句的结果集,但不会去除重复的行。它的基本语法如下:
```
SELECT column1, column2, ...
FROM table1
UNION ALL
SELECT column1, column2, ...
FROM table2;
```
UNION ALL会将两个SELECT语句的结果集合并成一个结果集,包括重复的行。
下面是一个示例,展示了UNION和UNION ALL的区别:
```
SELECT employee_id, employee_name
FROM employees
WHERE department = 'Sales'
UNION
SELECT employee_id, employee_name
FROM employees
WHERE department = 'Marketing';
SELECT employee_id, employee_name
FROM employees
WHERE department = 'Sales'
UNION ALL
SELECT employee_id, employee_name
FROM employees
WHERE department = 'Marketing';
```
在这个示例中,第一个查询使用UNION操作符,合并了两个SELECT语句的结果,并去除了重复的行。第二个查询使用UNION ALL操作符,合并了两个SELECT语句的结果,包括重复的行。
阅读全文