🌿 중급 DB
JOIN이 뭔가요?
쉽게 이해하기
학교에서 학생 명단과 성적표가 따로 있을 때, 학생 이름과 성적을 함께 보려면 두 장을 나란히 놓고 학생 번호로 매칭해야 하잖아요. JOIN은 바로 이렇게 여러 테이블을 특정 기준으로 연결해서 하나처럼 보여주는 기능이에요.
핵심 정리
여러 테이블의 데이터를 연결해서 한 번에 가져오는 SQL 기능이에요.
자세히 알아보기
JOIN은 관계형 데이터베이스에서 두 개 이상의 테이블을 연결해서 데이터를 조회하는 핵심 기능입니다. 예를 들어, '주문' 테이블과 '고객' 테이블이 있을 때, 주문 정보와 함께 고객 이름을 보고 싶다면 JOIN을 사용해요.
INNER JOIN은 양쪽 테이블에 모두 있는 데이터만 가져오고, LEFT JOIN은 왼쪽 테이블의 모든 데이터와 매칭되는 오른쪽 데이터를 가져옵니다. 예를 들어, '고객' 테이블과 '주문' 테이블을 LEFT JOIN하면 주문하지 않은 고객도 결과에 포함돼요.
실무에서는 세 개 이상의 테이블을 JOIN하는 경우도 많아요. 주문 테이블, 상품 테이블, 고객 테이블을 모두 연결해서 '누가, 무엇을, 언제 주문했는지' 한눈에 볼 수 있죠. 하지만 JOIN이 많아질수록 쿼리 속도가 느려질 수 있어서, 인덱스를 잘 설정하거나 필요한 경우 비정규화를 고려하기도 합니다.
JOIN을 이해하면 데이터베이스 설계를 정규화해서 깔끔하게 만들고, 필요할 때 유연하게 데이터를 조합할 수 있어요.