안녕하세요
오늘은 여러 테이블을 한번에 조회할 수 있게 하는 JOIN에 대해 알아보도록 하겠습니다.
JOIN(조인) 이란?
여러 테이블을 하나로 합쳐서 데이터를 보이도록 가능하게 해주는 구문입니다.
만약 캐릭터 테이블과 길드원 테이블이 있을 때, 길드원 테이블에 길드원 아이디만 있고, 길드원 이름이 없다면,
이럴때 JOIN을 사용하면, 캐릭터 테이블에서 캐릭터 아이디로 길드원 이름을 얻을 수 있습니다.
조인의 종류
□ INNER JOIN

문법
SELECT 출력할 컬럼1, 출력할 컬럼2 ... FROM 기준테이블명
INNER JOIN 조인테이블명 ON 기준테이블.키값 = 조인테이블.키값
예제
SELECT A.m_nGuildNo, A.m_nPlayer, B.m_szName FROM GUILD_TBL A
INNER JOIN CHRACTER B ON A.m_nPlayer = B.m_nPlayer;
□ LEFT OUTER JOIN

문법
SELECT 출력할 컬럼1, 출력할 컬럼2 ... FROM 기준테이블명
LEFT OUTER JOIN 조인테이블명 ON 기준테이블.키값 = 조인테이블.키값
예제
SELECT A.m_nGuildNo, A.m_nPlayer, B.m_szName FROM GUILD_TBL A
LEFT OUTER JOIN CHRACTER B ON A.m_nPlayer = B.m_nPlayer;
□ RIGHT OUTER JOIN

문법
SELECT 출력할 컬럼1, 출력할 컬럼2 ... FROM 기준테이블명
RIGHT OUTER JOIN 조인테이블명 ON 기준테이블.키값 = 조인테이블.키값
예제
SELECT A.m_nGuildNo, A.m_nPlayer, B.m_szName FROM GUILD_TBL A
RIGHT OUTER JOIN CHRACTER B ON A.m_nPlayer = B.m_nPlayer;
□ FULL OUTER JOIN

문법
SELECT 출력할 컬럼1, 출력할 컬럼2 ... FROM 기준테이블명
FULL OUTER JOIN 조인테이블명 ON 기준테이블.키값 = 조인테이블.키값
예제
SELECT A.m_nGuildNo, A.m_nPlayer, B.m_szName FROM GUILD_TBL A
FULL OUTER JOIN CHRACTER B ON A.m_nPlayer = B.m_nPlayer;
□ CROSS JOIN

문법
SELECT 출력할 컬럼1, 출력할 컬럼2 ... FROM 기준테이블명
CROSS JOIN 조인테이블
예제
SELECT A.m_nGuildNo, B.m_szName FROM GUILD_TBL A
CROSS JOIN CHRACTER B
□ SELF JOIN
문법
SELECT 출력할 컬럼1, 출력할 컬럼2 ... FROM 기준테이블명, 기준테이블명2
예제
SELECT A.m_nGuildNo, B.m_szName FROM GUILD_TBL A, GUILD_TBL B
'개발공부 > MSSQL' 카테고리의 다른 글
[MSSQL] GROUP BY, HAVING 사용 (0) | 2020.02.12 |
---|---|
[MSSQL] ALIAS(별칭) 사용 (0) | 2020.02.10 |
[MSSQL] 테이블 데이터 삭제(DELETE) (0) | 2020.02.08 |
[MSSQL] 테이블 데이터 수정(UPDATE) (0) | 2020.02.07 |
[MSSQL] 테이블에 데이터 삽입(INSERT) (0) | 2020.02.05 |