여러 개의 SQL문을 합쳐서 하나의 SQL문으로 만들어주는 방법
컬럼의 개수가 같아야 한다!!!
중복된 값을 제거하여 알려준다.
중복된 값도 포함하여 모두 보여준다.
select column1,column2,, from ()
uniom
select column1, column2,,from ()
두 개 이상의 테이블을 결합시켜준다.
두 개의 테이블에서 공통된 요소들을 통해 결합하는 조인방식 (교집합)
select column1,column2,,
from ()
inner join ()
on ().column=().column
where conditions;
두 개의 테이블에서 공통영역을 포함해 왼쪽 테이블의 다른 데이터를 포함하는 조인 방식
select column1,column2..
from ()
left join ()
on ().column = ().column
where condition;
두 개의 테이블에서 공통영역을 포함해 오른쪽 테이블의 다른 데이터를 포함하는 조인 방식
select column1,column2..
from ()
right join ()
on ().column = ().column
where condition;
두 개의 테이블에서 공통영역을 포함하여 양쪽 테이블의 다른 영역을 모두 포함하는 조인방식 (합집합)
select column1,column2..
from ()
full outer join ()
on ().column = ().column
where condition;
MYSQL에서는 지원하는 않는다!
MYSQL에서 사용하는 방법
left join과 right join을 해주는데 union으로 중복된 값을 제거해준다.
그러면 모든 영역의 데이터를 포함할 수 있다.
select column1,column2..
from ()
left join ()
on ().column = ().column
UNION
select column1,column2..
from ()
right join ()
on ().column = ().column
예시)
select column1,column2..
from (),()
WHERE condition;
select concat ('str1','str2',..);
칼럼이나 테이블에 이름 별칭 생성
select *
from table as alias;
예시)
검색한 결과의 중복 제거
select distinct column1..,column2..
from table;
검색 결과를 정렬된 순으로 주어진 숫자만큼만 조회
SELECT column1,column2
from table
where condition
limit number;