SQL

SQL

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

페이지 정보

profile_image
영삼이
0건 54회 25-03-28 15:25

본문

INNER JOINLEFT 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 JOINusersorders 두 테이블에서 매칭되는 데이터만 반환

  • NULL 값이 포함되지 않으며, 필터링된 결과만 반환


언제 LEFT JOIN을 사용해야 할까?

  • 결과에 NULL 값을 포함시켜야 할 때

  • 예: "모든 사용자를 포함하고, 주문이 있는 사용자만 주문 금액을 포함"

SELECT u.name, o.amount
FROM users u
LEFT JOIN orders o ON u.id = o.user_id;
  • LEFT JOINNULL 값을 허용하고,

  • 모든 데이터를 유지할 때 사용


✔️ 불필요한 데이터를 포함시키지 않도록 INNER JOIN을 기본으로 사용하되,
특별한 경우에만 LEFT JOIN을 사용해야 한다.
필터링된 데이터만 필요할 때는 INNER JOIN을 사용하는 게 더 효율적이다.

댓글목록

등록된 댓글이 없습니다.