반응형

두 개 이상의 테이블에서 원하는 데이터를 가져오기 위해 조인을 합니다.

JOIN과 INNER JOIN에 대해 알아보겠습니다.

 


 

1. Join

select a.column1, b.column2
from table1 a, table2 b
where a.column3 = b.column4

- 테이블 두 개를 조인한 코드입니다.

 

- table1, table2라는 테이블이 두 개 있습니다.

- table1의 컬럼 column1과 table2의 컬럼 column2를 조회합니다.

 

- 조인을 하기 위해서는 조건이 필요합니다.

- 조건은 table1의 column3과 table2의 column4가 같은 데이터만 조인하여 출력합니다.

 

 

* 예시 테이블

 

- table1 (a)

column1 column3
100 1
200 2
300 3

 

- table2 (b)

column2 column4
400 2
500 3
600 4

 

- Join 결과

a.column1 b.column2
200 400
300 500

 

- table1과 table2의 조인 조건이 column3과 column4가 같은 데이터입니다.

- 따라서 column3과 column4가 같은 데이터는 2, 3이 있습니다.

 

- 그중에서 출력을 column1과 column2를 했으므로 위와 같은 결과가 나타납니다.

 

 

2. INNER Join

select a.column1, b.column2
from table1 a
inner join table2 b
on a.column3 = b.column4
where column1 = '사아자'

- inner join을 한 코드입니다.

 

- 위의 join과 sql문은 조금 다르지만, 조인 조건과 같은 데이터만 출력한다는 점에서 같습니다.

- 조인 조건은 on 뒤에 표기하고, 그 외의 검색 조건은 where 절을 이용합니다.

 

 

* 예시 테이블

 

- table1 (a)

column1 column3
가나다 10
라마바 20
사아자 30

 

- table2 (b)

column2 column4
차카타 20
파하가 30
나다라 40

 

- inner Join 결과

column1 column2
사아자 파하가

 

- table1과 table2의 조인 조건이 column3과 column4가 같은 데이터입니다.

- 따라서 column3과 column4가 같은 데이터는 20, 30이 있습니다.

 

- 그중에서 where 절에 column1이 '사아자'인 데이터를 출력하도록 하였으므로 위와 같은 결과가 나타납니다.

 

 

 

이상으로 MySQL JOIN, INNER JOIN에 대해 알아보았습니다.

 


 

반응형