IT/지식

[SQL] JOIN

생각없이 해도 생각보다 좋다. 2023. 11. 3. 18:13

JOIN

종류

1. INNER JOIN

  • INNER JOIN은 두 테이블 간에 일치하는 행만 반환
    SELECT orders.order_id, customers.customer_name
    FROM orders
    INNER JOIN customers ON orders.customer_id = customers.customer_id;

    2. LEFT JOIN

  • LEFT JOIN: 왼쪽 테이블의 모든 행을 반환하고, 오른쪽 테이블과 일치하는 행이 있는 경우에는 일치하는 행도 반환
    SELECT customers.customer_name, orders.order_id
    FROM customers
    LEFT JOIN orders ON customers.customer_id = orders.customer_id;

    3. RIGHT JOIN

  • RIGHT JOIN: 오른쪽 테이블의 모든 행을 반환하고, 왼쪽 테이블과 일치하는 행이 있는 경우에는 일치하는 행도 반환
    SELECT customers.customer_name, orders.order_id
    FROM customers
    RIGHT JOIN orders ON customers.customer_id = orders.customer_id;

    4. FULL OUTER JOIN

  • FULL OUTER JOIN: 양쪽 테이블의 모든 행을 반환하며, 일치하지 않는 행에는 NULL 값을 채움
  • FULL OUTER JOIN은 테이블 간의 모든 데이터를 비교하는 데 사용
    SELECT customers.customer_name, orders.order_id
    FROM customers
    FULL OUTER JOIN orders ON customers.customer_id = orders.customer_id;

    5. SELF JOIN

  • SELF JOIN: 동일한 테이블을 연결할 때 사용
  • 예시: 조직 구조를 나타내는 테이블에서 부모와 자식 관계를 찾는 경우 SELF JOIN을 사용
    SELECT e1.employee_name, e2.employee_name AS manager_name
    FROM employees e1
    INNER JOIN employees e2 ON e1.manager_id = e2.employee_id;

'IT > 지식' 카테고리의 다른 글

[SQL] STRING  (0) 2023.11.23
[SQL] UNION  (0) 2023.11.23
[SQL] SELECT METHODS  (0) 2023.11.03
[SQL] DATE Methods  (1) 2023.11.03
[IT] 지식 (페이지 교체 알고리즘)  (0) 2023.10.20