MSSQL 테이블 조인 : INNER JOIN , OUTER JOIN
페이지 정보
본문
INNER JOIN
양쪽 테이블에 모두 내용이 있는 것만 조인되는 방식
SELECT <열목록>
FROM <첫번째 테이블>
INNER JOIN <두번째 테이블>
ON <조인될 조건>
[WHERE 검색조건]
OUTER JOIN
INNER JOIN과 마찬가지로 양쪽에 내용이 있으면 당연히 조인되고, 한쪽에만 내용이 있어도 그 결과가 표시되는 조인방식
" SQL Sever 2005/2008에서는 기본적으로 지원하지 않는다.
별도로 SQL Server 2000 모드(80)로 변환해야만 실행이 가능하다.
또한 SQL Server 2008 다음 버전에서는 아예 지원하지 않을 예정이다.
인용 : 뇌를 자극하는 SQL Server 2008 / 우재남 저 / 한빛미디어 / p.294
"
SELECT <열목록>
FROM <첫번째 테이블 (LEFT 테이블)>
<LEFT | RIGHT | FULL> OUTER JOIN <두번째 테이블 (RIGHT 테이블)>
ON <조인될 조건>
[WHERE 검색조건]
LEFT OUTER JOIN의 의미는 '왼쪽 테이블(userTBL)의 것은 모두 출력되어야 한다' 정도로 해석하면 기억하기 쉬울 것이다.
LEFT OUTER JOIN을 줄여서 LEFT JOIN 또는 *= 로 사용한다.
SELECT <열목록>
FROM <첫번째 테이블 (LEFT 테이블)>
LEFT OUTER JOIN <두번째 테이블 (RIGHT 테이블)>
ON <조인될 조건>
[WHERE 검색조건]
RIGHT OUTER JOIN은 LEFT OUTER JOIN의 반대개념이다.
RIGHT OUTER JOIN을 줄여서 RIGHT JOIN 또는 =* 로 사용한다.
SELECT <열목록> FROM <첫번째 테이블 (LEFT 테이블)>
RIGHT OUTER JOIN <두번째 테이블 (RIGHT 테이블)>
ON <조인될 조건>
[WHERE 검색조건]
FULL OUTER JOIN은 LEFT OUTER JOIN과 RIGHT OUTER JOIN을 합친 것이라고 생각하면 된다.
그냥 줄여서 FULL JOIN 이라고 부른다.
즉, 한쪽을 기준으로 조건과 일치하지 않는 것을 출력하는 것이 아니라 양쪽 모두에 조건이 일치하지 않는 것을 모두 출력하는 개념이다.
참고자료
뇌를 자극하는 SQL Server 2008 / 우재남 저 / 한빛미디어 / p.284~301
http://ikpil.com/1102
http://ikpil.com/1103
양쪽 테이블에 모두 내용이 있는 것만 조인되는 방식
SELECT <열목록>
FROM <첫번째 테이블>
INNER JOIN <두번째 테이블>
ON <조인될 조건>
[WHERE 검색조건]
OUTER JOIN
INNER JOIN과 마찬가지로 양쪽에 내용이 있으면 당연히 조인되고, 한쪽에만 내용이 있어도 그 결과가 표시되는 조인방식
" SQL Sever 2005/2008에서는 기본적으로 지원하지 않는다.
별도로 SQL Server 2000 모드(80)로 변환해야만 실행이 가능하다.
또한 SQL Server 2008 다음 버전에서는 아예 지원하지 않을 예정이다.
인용 : 뇌를 자극하는 SQL Server 2008 / 우재남 저 / 한빛미디어 / p.294
"
SELECT <열목록>
FROM <첫번째 테이블 (LEFT 테이블)>
<LEFT | RIGHT | FULL> OUTER JOIN <두번째 테이블 (RIGHT 테이블)>
ON <조인될 조건>
[WHERE 검색조건]
LEFT OUTER JOIN의 의미는 '왼쪽 테이블(userTBL)의 것은 모두 출력되어야 한다' 정도로 해석하면 기억하기 쉬울 것이다.
LEFT OUTER JOIN을 줄여서 LEFT JOIN 또는 *= 로 사용한다.
SELECT <열목록>
FROM <첫번째 테이블 (LEFT 테이블)>
LEFT OUTER JOIN <두번째 테이블 (RIGHT 테이블)>
ON <조인될 조건>
[WHERE 검색조건]
RIGHT OUTER JOIN은 LEFT OUTER JOIN의 반대개념이다.
RIGHT OUTER JOIN을 줄여서 RIGHT JOIN 또는 =* 로 사용한다.
SELECT <열목록> FROM <첫번째 테이블 (LEFT 테이블)>
RIGHT OUTER JOIN <두번째 테이블 (RIGHT 테이블)>
ON <조인될 조건>
[WHERE 검색조건]
FULL OUTER JOIN은 LEFT OUTER JOIN과 RIGHT OUTER JOIN을 합친 것이라고 생각하면 된다.
그냥 줄여서 FULL JOIN 이라고 부른다.
즉, 한쪽을 기준으로 조건과 일치하지 않는 것을 출력하는 것이 아니라 양쪽 모두에 조건이 일치하지 않는 것을 모두 출력하는 개념이다.
참고자료
뇌를 자극하는 SQL Server 2008 / 우재남 저 / 한빛미디어 / p.284~301
http://ikpil.com/1102
http://ikpil.com/1103
댓글목록
등록된 댓글이 없습니다.