UNION
은 여러 개의 SQL문을 합쳐서 하나의 SQL 문으로 만들어주는 방법이다.
한가지 주의할 점은 합칠 여러 개의 SQL문들의 열(column)의 개수가 같아야한다.
UNION 문법
UNION
: 중복된 값을 제거하여 알려준다.SELECT column1, column2, ... FROM tableA UNION SELECT column1, column2, ... FROM tableB;
UNION ALL 문법
UNION ALL
: 중복된 값을 모두 보여준다.SELECT column1, column2, ... FROM tableA UNION ALL SELECT column1, column2, ... FROM tableB;
Example 1: test1의 모든 데이터와 test2의 모든 데이터를 중복된 값을 포함하여 검색하기
중복된 값을 포함하는 문제이기에 UNION ALL
문법 사용하기
SELECT * FROM test1
UNION ALL
SELECT * FROM test2;
Example 2: test1의 모든 데이터와 test2의 모든 데이터를 중복된 값을 제거하여 검색하기
중복된 값을 제거하는 문제이기에 UNION
문법 사용하기
SELECT * FROM test1
UNION
SELECT * FROM test2;
Example 3: 성별이 남자인 데이터를 검색하는 query와 직업이 직장인인 데이터를 검색하는 query를 UNION ALL
로 실행하기
SELECT * FROM family
WHERE sex='M'
UNION ALL
SELECT * FROM family
WHERE occupation='직장인';
Example 4: 성별이 남자인 데이터를 검색하는 query와 직업이 직장인인 데이터를 검색하는 query를 UNION
로 실행하기
SELECT * FROM family
WHERE sex='M'
UNION
SELECT * FROM family
WHERE occupation='직장인';