JOIN
한 테이블의 행을 다른 테이블의 행에 연결하는 연산으로, 두 개 이상의 테이블을 결합한다.
내부 조인 INNER JOIN
두 테이블의 지정한 컬럼에서 값이 같은 경우를 추출한다.
SELECT 속성(들)
FROM 테이블1
INNER JOIN 테이블2
ON 테이블1.속성 = 테이블2.속성;
[WHERE 조건]
왼쪽 외부 조인 LEFT OUTER JOIN
왼쪽 테이블의 모든 데이터와 오른쪽 테이블의 동일 데이터를 추출한다.
SELECT 속성(들)
FROM 테이블1
LEFT JOIN 테이블2
ON 테이블1.속성 = 테이블2.속성;
[WHERE 조건]
오른쪽 외부 조인 RIGHT OUTER JOIN
오른쪽 테이블의 모든 데이터와 왼쪽 테이블의 동일 데이터를 추출한다.
SELECT 속성(들)
FROM 테이블1
RIGHT JOIN 테이블2
ON 테이블1.속성 = 테이블2.속성;
[WHERE 조건]
완전 외부 조인 FULL OUTER JOIN
양쪽의 모든 데이터를 추출한다.
SELECT 속성(들)
FROM 테이블1
FULL OUTER JOIN 테이블2
ON 테이블1.속성 = 테이블2.속성;
[WHERE 조건]
교차 조인 CROSS JOIN
한 테이블의 모든 행과 다른 테이블의 모든 행의 조합을 추출한다. 결과로 두 테이블의 각 행의 개수를 곱한 만큼의 행을 가진 테이블을 반환한다. 조인 조건 없이 모든 데이터의 조합을 추출하므로 ON 절을 갖지 않는다.
SELECT 속성(들)
FROM 테이블1
CROSS JOIN 테이블2;
셀프 조인 SELF JOIN
자기 자신(테이블)에 별칭을 지정 후 다시 조인한다.
SELECT 속성(들)
FROM 테이블1 A, 테이블1 B;
[WHERE 조건]
ref.
'back-end > sql' 카테고리의 다른 글
SQL/ SQK Keywords (0) | 2022.06.13 |
---|---|
SQL/ 데이터 모델링 (0) | 2022.06.13 |
SQL/ 키 Key (0) | 2022.06.10 |
SQL/ 릴레이션의 개념 (0) | 2022.06.10 |