select column1, column2 ... from table1
union | union all
select column1, column2 ... from table2
select name, sex, agency from celeb where sex = 'F'
UNION ALL
select name, sex, agency from celeb where agency = 'YG엔터테이먼트'
celeb테이블에서 성별이 여자인 행의 이름, 성별, 소속사를 조회한 데이터와 celeb 테이블에서 소속사가 YG엔터테이먼트인 행의 이름, 성별, 소속사를 조회한 데이터를 중복을 제거하지 않고 합쳐서 조회
select name, birthday, age from celeb
where job_title LIKE '%가수%'
UNION
select name, birthday, age from celeb
where birthday between '1980-01-01' and '1989-12-31';
가수가 직업인 연예인의 이름, 생년월일, 나이를 검색하는 쿼리와 1980년대에 태어난 연예인의 이름, 생년월일, 나이를 검색하는 쿼리를 UNION으로 실행
select column_, column__,...
from tableA
INNER JOIN|LEFT JOIN|RIGHT JOIN
tableB
on tableA.column1 = tableB.column2
where conditions;
INNER JOIN
두 개의 테이블에서 공통된 요소들을 통해 결합하는 조인방식(교집합)
where 절을 만족하면서 tableA의 column1과 tableB의 column2가 같은 경우의 데이터 중 column_, column__,...를 조회
LEFT JOIN
두 개의 테이블에서 공통영역을 포함해 왼쪽 테이블의 다른 데이터를 포함하는 방식
오른쪽 테이블이 가지고 있지 않은 값에 대하여는 null값이 조회
RIGHT JOIN
두 개의 테이블에서 공통영역을 포함해 오른쪽 테이블의 다른 데이터를 포함하는 방식
왼쪽 테이블이 가지고 있지 않은 값에 대하여는 null값이 조회
select column1, column2,...
from tableA
LEFT JOIN tableB
On tableA.column = tableB.column
UNION
select column1, column2,...
from tableA
RIGHT JOIN tableB
On tableA.column = tableB.column
select column1, column2, ...
from tableA, tableB
where tableA.column = tableB.column;