[MSSQL] inner join 사용방법 정리

MSSQL 에서 두 테이블의 데이터를 비교해서 조회하는 join 명령어 중 두 테이블의 교집합이 되는 데이터를 조회하는 inner join 명령어의 기본 사용법에 대해 정리해봅니다.

개념

inner join 은 교집합이라고 생각하면 됩니다. A 와 B 두 테이블이 있다면 A 와 B 테이블에서 같은 값을 가지고 있는 특정 Column 을 교집합의 기준으로 설정하고 여러가지 조건을 걸어 원하는 데이터를 가져오는 것입니다.

사용법

기본 사용법은 아래와 같습니다.

SELECT A.CODE FROM (테이블A) A
INNER JOIN (테이블B) B 
ON A.CODE=B.CODE

대충 감이 잡히나요?

테이블A테이블B 에서 두 테이블의 CODE 열의 값이 같은 것을 기준으로(위 예제에서 ON 명령어에서 기준 설정) 모든 데이터를 조회해 CODE 값을 반환하는 간단한 쿼리입니다.

조건문

위 코드에 WHERE 문을 추가해 조금 더 찾고자 하는 데이터를 분명히 할 수 있습니다.

SELECT A.CODE FROM (테이블A) A
INNER JOIN (테이블B) B 
ON A.CODE=B.CODE
WHERE A.TYPE="AAA" AND B.DUEDATE="2030-12-31"

위와 같이 WHERE 문을 추가하고 테이블A 에서는 TYPE 의 값이 AAA 이고, 테이블B에서는 DUEDATE 의 값이 2030-12-31 인 데이터만 조회 할 수 있습니다.

WHERE 문을 구체적으로 설정함에 따라서 더욱 명확한 데이터를 조회 할 수 있겠죠?

끝.