Union
Union
연산자는 두 개의 SELECT 문의 결과를 결합하여 하나의 결과 집합으로 반환하는 데 사용됩니다. 이 때, 중복된 행은 제거됩니다.
사용법
SELECT column1, column2, ... FROM table1
UNION
SELECT column1, column2, ... FROM table2;
예제
예를 들어, Employees
테이블과 Managers
테이블이 있다고 가정해봅시다. 각각의 테이블에는 사원들의 정보가 포함되어 있습니다.
Employees 테이블
| EmployeeID | EmployeeName |
|------------|--------------|
| 1 | John |
| 2 | Alice |
| 3 | Bob |
Managers 테이블
| ManagerID | ManagerName |
|-----------|-------------|
| 10 | Sarah |
| 11 | David |
위의 두 테이블에서 EmployeeName
열을 기준으로 UNION 연산을 수행하면 다음과 같은 결과를 얻을 수 있습니다.
결과
| EmployeeName |
|--------------|
| John |
| Alice |
| Bob |
| Sarah |
| David |
Union All
Union All
연산자는 Union
과 마찬가지로 두 개의 SELECT 문의 결과를 결합하지만, 중복 행을 제거하지 않습니다. 따라서 중복된 행도 결과에 포함됩니다.
사용법
SELECT column1, column2, ... FROM table1
UNION ALL
SELECT column1, column2, ... FROM table2;
예제
위의 예제와 마찬가지로 Employees
테이블과 Managers
테이블에서 EmployeeName
열을 기준으로 UNION ALL 연산을 수행하면 다음과 같은 결과를 얻을 수 있습니다.
결과
| EmployeeName |
|--------------|
| John |
| Alice |
| Bob |
| Sarah |
| David |
여기까지 Union
과 Union All
연산자의 사용법과 예제를 알아보았습니다.
마지막으로, Union
연산은 중복된 행을 제거하여 결과를 반환하지만, Union All
연산은 중복 행을 제거하지 않고 모든 결과를 반환한다는 차이점이 있습니다. 따라서, 중복을 제거할 필요가 없는 경우에는 Union All
을 사용하는 것이 성능적으로 더 좋을 수 있습니다.
댓글