[sql] UNION 연산자를 사용한 데이터베이스 테이블 병합
데이터베이스 쿼리를 작성할 때 종종 여러 테이블에서 데이터를 조합해야 할 때가 있습니다. SQL에서는 UNION 연산자를 사용하여 두 개 이상의 SELECT 문의 결과를 결합할 수 있습니다.
UNION 연산자의 기본 구조
SELECT column1, column2, ...
FROM table1
UNION
SELECT column1, column2, ...
FROM table2;
위의 예시에서 첫 번째 SELECT 문과 두 번째 SELECT 문의 결과를 하나로 합치게 됩니다. UNION 연산자는 중복된 행을 자동으로 제거해주기 때문에 중복된 결과를 피하고자 할 때 특히 유용합니다.
UNION ALL 연산자
반면, UNION ALL 연산자를 사용하면 중복된 행을 제거하지 않고 그대로 결합합니다. 아래의 예시는 UNION ALL 연산자를 사용한 것입니다.
SELECT column1, column2, ...
FROM table1
UNION ALL
SELECT column1, column2, ...
FROM table2;
주의사항
- UNION 및 UNION ALL을 사용할 때에는 각 SELECT 문의 컬럼 수와 데이터 유형이 일치하여야 합니다.
- 두 개 이상의 테이블을 병합할 경우, 테이블 간에 일치하는 컬럼이 있어야 합니다.
UNION 및 UNION ALL 연산자는 여러 테이블의 데이터를 효율적으로 조합하는 데 유용한 기능입니다. 이를 통해 데이터를 효과적으로 결합하여 원하는 결과를 얻을 수 있습니다.
참고 자료: