INNER JOIN
- 첫번째 테이블과 두번째 테이블에 조건을 만족하는 데이터만 출력
SELECT *
FROM TABLE_A
INNER JOIN TABLE_B
ON 조건
OUTERJOIN
LEFT JOIN
- 첫 번째 테이블을 기준으로 두 번째 테이블에 조건을 만족하는 데이터가 없더라도 출력
- 첫 번째 테이블의 필드 값은 그대로 가져오고 두 번째 테이블의 필드 값은 NULL로 표시
SELECT *
FROM TABLE_A
LEFT JOIN TABLE_B
ON 조건
RIGHT JOIN
- LEFT JOIN과 반대로 두번쨰 테이블을 기준으로 한다.
SELECT *
FROM TABLE_A
RIGHT JOIN TABLE_B
ON 조건
❓JOIN할 때 ON과 WHERE의 차이
- ON : JOIN 전에 조건을 필터링
- WHERE : JOIN 후에 조건을 필터링
INNER JOIN을 할 때는 둘의 차이가 없지만 OUTER JOIN을 할 때는 ON으로 조건을 걸어주어야 한다.
'MySQL, DBMS' 카테고리의 다른 글
[MySQL] 서브쿼리(subquery) (0) | 2023.03.09 |
---|---|
[MySQL] SELECT 합치기 - UNION (0) | 2023.03.09 |
[MySQL] - CASE문 (0) | 2023.03.09 |
[MySQL] 그룹화하여 데이터 조회 (GROUP BY, HAVING) (0) | 2023.03.09 |
[DB] DDL, DML, DCL 이란? (0) | 2023.03.09 |