데이터베이스
MySQL : Join
P_eli
2023. 11. 23. 16:32
728x90
반응형
MySQL에서 가장 강력하면서도 복잡한 데이터를 다룰 때 필수적인 'JOIN'에 대해 알아보겠습니다. JOIN은 테이블 간의 연결을 통해 데이터를 효과적으로 조합하는 데 사용됩니다.
JOIN이란 무엇인가요?
JOIN은 두 개 이상의 테이블을 연결하여 하나의 결과 집합을 만드는 데 사용되는 SQL 명령어입니다. 이는 여러 테이블 간의 관계를 활용하여 데이터를 효과적으로 가져올 수 있게 해줍니다.
INNER JOIN 예제
가장 기본적인 JOIN 유형은 INNER JOIN입니다. 이는 두 테이블에서 일치하는 행만을 가져옵니다. 예를 들어, 'users' 테이블과 'orders' 테이블에서 일치하는 주문을 찾는 쿼리는 다음과 같습니다.
-- 사용자와 주문을 INNER JOIN
SELECT users.name, orders.order_id
FROM users
INNER JOIN orders ON users.user_id = orders.user_id;
LEFT JOIN 예제
LEFT JOIN은 왼쪽 테이블의 모든 행을 가져오고 오른쪽 테이블과 일치하는 행이 있는 경우에만 오른쪽 테이블의 값을 가져옵니다.
-- 사용자와 주문을 LEFT JOIN
SELECT users.name, orders.order_id
FROM users
LEFT JOIN orders ON users.user_id = orders.user_id;
RIGHT JOIN 예제
RIGHT JOIN은 LEFT JOIN의 반대입니다. 오른쪽 테이블의 모든 행을 가져오고 왼쪽 테이블과 일치하는 행이 있는 경우에만 왼쪽 테이블의 값을 가져옵니다.
-- 사용자와 주문을 RIGHT JOIN
SELECT users.name, orders.order_id
FROM users
RIGHT JOIN orders ON users.user_id = orders.user_id;
FULL OUTER JOIN 예제
FULL OUTER JOIN은 양쪽 테이블에서 일치하는 모든 행을 가져옵니다. 어느 한 쪽에만 데이터가 있는 경우에도 결과에 포함됩니다.
-- 사용자와 주문을 FULL OUTER JOIN
SELECT users.name, orders.order_id
FROM users
FULL OUTER JOIN orders ON users.user_id = orders.user_id;
주의사항
JOIN은 강력한 기능이지만, 적절하게 사용해야 합니다. 과도한 JOIN은 성능을 저하시킬 수 있으므로 필요한 만큼만 사용하는 것이 좋습니다.
728x90
반응형