1. LEFT JOIN
-왼쪽 테이블에서는 모든 값을, 오른쪽 테이블에서는 왼쪽 테이블과 일치되는 값을 반환
-어떠한 값이 왼쪽 테이블에는 존재하지만 오른쪽 테이블에는 존재하지 않는다면 왼쪽 테이블에서 가져온 행의 값들은 빠짐없이 반환되지만 오른쪽 테이블에서 가져오는 행의 값들은 NULL값으로 반환
-오른쪽 테이블에는 값이 존재하지만 왼쪽테이블에는 존재하지 않는다면 해당 값은 반환되지 않음
cf) INNER JOIN : 조인하는 두 테이블에 공통으로 존재하는 값 반환
-tableX
A | B | |
1 | * | * |
2 | * | * |
-tableY
C | D | |
1 | # | # |
3 | # | # |
-LEFT JOIN
A | B | C | D | |
1 | * | * | # | # |
2 | * | * |
2. LEFT JOIN의 기본 구문
SELECT column_name(s)
FROM tableX
LEFT JOIN tableY
ON tableX.column_name=tableY.column_name;
3. 3개 이상의 테이블 LEFT JOIN 구문
SELECT x.column_name,
y.column_name,
z.column_name
FROM tableX x
LEFT JOIN tableY y
ON x.column_nameM=y.column_nameN
LEFT JOIN tableZ z
ON x.column_nameM=z.column_nameO;
(원하는 반환값에 따른 테이블의 순서 중요!!)
'데이터베이스' 카테고리의 다른 글
MySQL 시간 변환 함수 UNIX_TIMESTAMP(), FROM_UNIXTIME() (0) | 2022.06.03 |
---|---|
[MyBatis] parameterType과 resultType (0) | 2022.05.02 |
MyBatis란? (0) | 2022.04.29 |