IT 소스/MariaDB

[MariaDB] 테이블 연결 - JOIN

한량이야기 2023. 1. 17. 08:38
반응형

안녕하세요. 경제적, 시간적 자유를 꿈꾸는 한량입니다.

 

예문 테이블을 가지고 조인이 어떻게 동작하는지 알아보겠습니다.

CREATE TABLE test1 ( num1 INT );
CREATE TABLE test2 ( num2 INT );
INSERT INTO test1 VALUES (1), (2), (3);
INSERT INTO test2 VALUES (2), (4);

 

1. 내부 조인 - INNER JOIN

조인된 테이블에서 지정된 조인 조건에 대해 

만족하는 행만 포함하여 결과 집합을 생성합니다.

SELECT * FROM test1 INNER JOIN test2 ON test1.num1 = test2.num2;

// 실행 결과
------ ------ 
| num1 | num2 |
------ ------ 
|   2  |   2  |
------ ------

 

2. 외부 조인 - (LEFT, RIGHT, FULL) OUTER JOIN

 기준이 되는 테이블열 값과 일치하는 항목이 없으면

해당 테이블의 모든 열이 해당 행에 대해 NULL로 설정됩니다.

 

SELECT * FROM test1 LEFT OUTER JOIN test2 ON test1.num1 = test2.num1;

// 실행 결과
------ ------ 
| num1 | num2 |
------ ------ 
|   1  | NULL |
|   2  |    2 |
|   3  | NULL |
------ ------

 

3. 상호 조인 - CROSS JOIN

각 테이블의 모든 행이 다른 테이블의 모든 행에 조인되는 결과 집합을 생성합니다.

MariaDB에서 CROSS 키워드는 아무것도 하지 않으므로 생략할 수 있습니다.

ON 절이 없는 JOIN은 CROSS JOIN입니다.

SELECT * FROM test1 CROSS JOIN test2;

// 실행 결과
------ ------ 
| num1 | num2 |
------ ------ 
|    1 |    2 |
|    2 |    2 |
|    3 |    2 |
|    1 |    4 |
|    2 |    4 |
|    3 |    4 |
------ ------
반응형

'IT 소스 > MariaDB' 카테고리의 다른 글

[MariaDB] SQL 쿼리 - IN, NOT IN  (0) 2023.01.20
[MariaDB] 테이블 결합 - UNION  (0) 2023.01.18
[MariaDB] 테이블 수정 - ALTER  (0) 2023.01.13
[MariaDB] 데이터 삭제 - DELETE  (0) 2023.01.12
[MariaDB] 데이터 수정 - UPDATE  (0) 2023.01.11