INNER JOIN과 LEFT JOIN의 차이점을 명확히 이해하고 사용하라
페이지 정보

영삼이
본문
✅ INNER JOIN
과 LEFT JOIN
의 차이점을 명확히 이해하고 사용하라
불필요한 결과를 제외하고, 필요한 데이터만 가져오자
❌ LEFT JOIN
을 사용할 때, 불필요하게 많은 결과를 가져오는 경우
SELECT u.name, o.amount
FROM users u
LEFT JOIN orders o ON u.id = o.user_id;
-
LEFT JOIN
은 모든users
를 포함하고, -
orders
에 해당하는 데이터가 없으면NULL
값을 반환 -
결과적으로 불필요한 NULL값도 포함될 수 있음
✅ INNER JOIN
을 사용하면 필요한 데이터만 가져올 수 있다
SELECT u.name, o.amount
FROM users u
INNER JOIN orders o ON u.id = o.user_id;
-
INNER JOIN
은users
와orders
두 테이블에서 매칭되는 데이터만 반환 -
NULL 값이 포함되지 않으며, 필터링된 결과만 반환
언제 LEFT JOIN
을 사용해야 할까?
-
결과에 NULL 값을 포함시켜야 할 때
-
예: "모든 사용자를 포함하고, 주문이 있는 사용자만 주문 금액을 포함"
SELECT u.name, o.amount
FROM users u
LEFT JOIN orders o ON u.id = o.user_id;
-
LEFT JOIN
은 NULL 값을 허용하고, -
모든 데이터를 유지할 때 사용
✔️ 불필요한 데이터를 포함시키지 않도록 INNER JOIN
을 기본으로 사용하되,
특별한 경우에만 LEFT JOIN
을 사용해야 한다.
필터링된 데이터만 필요할 때는 INNER JOIN
을 사용하는 게 더 효율적이다.
- 이전글EXPLAIN으로 실행 계획을 분석해 성능을 최적화하라 25.03.28
- 다음글JOIN과 OR을 함께 사용하면 성능이 저하될 수 있다 25.03.28
댓글목록
등록된 댓글이 없습니다.