[MSSQL] JOIN 정리 (INNER JOIN, LEFT JOIN)

AAAH·2022년 9월 15일
3

MSSQL 기초 다지기

목록 보기
1/1
post-thumbnail

학교에서 분명히 배웠지만ㅎㅎ 실전에서 쓰니 매우 헷갈렸던 JOIN에 대한 정리로 velog 첫 장을 열어보겠습니다!

JOIN : 두 개 이상의 여러 테이블을 연결하여 하나의 테이블로 조회할 수 있다. 이것을 ' 조인한다' 고 한다.

1
2
3
4
5
SELECT
테이블별칭.조회할칼럼
FROM 기준테이블 별칭
JOIN 조인테이블 별칭 
ON 기준테이블별칭.기준키 = 조인테이블별칭.기준키
cs

JOIN은 위와 같이 사용할 수 있는데 MSSQL에는 INNER JOIN, LEFT OUTER JOIN, RIGHT OUTER JOIN, FULL OUTER JOIN과 같이 다양한 사용법이 있습니다.

1. INNER JOIN

INNER JOIN : 기준 테이블과 JOIN 테이블에 모두 존재하는 중복 데이터를 조회한다.

INNER JOIN은 기본적인 조인 쿼리 방법으로 사용예제는 다음과 같습니다.

1
2
3
4
5
6
SELECT
A.NAME, --A테이블의 사원이름 조회
B.NO_EMP --B테이블의 사원번호 조회
FROM Eemployee_TBL A 
INNER JOIN Department_TBL B 
ON A.DEPT = B.DEPT
cs

또한 임의의 테이블 A와 B에 대해 A INNER JOIN B 는 기본 조인 A JOIN B 와 같습니다.

2. LEFT JOIN

LEFT JOIN : [기준 테이블] + [기준 테이블과 JOIN 테이블의 중복 데이터]를 조회한다.


LEFT JOIN은 왼쪽 테이블을 기준으로 A테이블의 모든 데이터와 A,B테이블의 중복 데이터를 조회하는 방식으로 사용법은 다음과 같습니다.

1
2
3
4
5
6
SELECT
A.NAME, --A테이블의 사원이름 조회
B.NO_EMP --B테이블의 사원번호 조회
FROM Eemployee_TBL A 
LEFT JOIN Department_TBL B 
ON A.NO_EMP = B.NO_EMP AND A.DEPT = B.DEPT
cs

또한 임의의 테이블 A와 B에 대해 A LEFT JOIN BA LEFT OUTER JOIN B 와 같습니다.

{정리 INNER JOIN은 기준 테이블과 조인 테이블 모두에 해당하는 값을 조회하기 때문에 겹치지 않는 데이터를 제외하고 조회할 때 사용, LEFT JOIN은 조인 테이블에 존재하지 않아도 기준 테이블에 존재하는 모든 데이터가 조회되기 때문에 조인 테이블의 필요한 컬럼을 빌려올 때 사용}

profile
Let's be USEFUL!

5개의 댓글

comment-user-thumbnail
2022년 9월 15일

잘 보고 갑니다 ^^

1개의 답글
comment-user-thumbnail
2022년 9월 16일

저두용^^

1개의 답글
comment-user-thumbnail
2023년 6월 1일

가독성 굿 ~ ^^

답글 달기
Powered by GraphCDN, the GraphQL CDN