[PostgreSQL] PostgreSQL FULL OUTER 조인

2024. 6. 11. 10:34·Database/PostgreSQL

FULL OUTER 조인

  • INNER, LEFT OUTER, RIGTH OUTER 조인 집합을 모두 출력하는 조인 방식
  • 즉, 두 테이블 간 출력 가능한 모든 데이터를 포함한 집합을 출력

실습

 

 1) A와 B의 테이블을 FRUIT 컬럼 기준으로 FULL OUTER 조인

SELECT 
	A.ID ID_A,
	A.FRUIT FRUIT_A,
	B.ID ID_B,
	B.FRUIT FRUIT_B
FROM BASKET_A A
FULL OUTER JOIN BASKET_B B ON A.FRUIT = B.FRUIT;

 

 2)  A와 B의 테이블을 FRUIT 컬럼 기준으로 FULL OUTER 조인. A.ID가 NULL 혹은 B.ID가 널인 값을 조회.

SELECT 
	A.ID ID_A,
	A.FRUIT FRUIT_A,
	B.ID ID_B,
	B.FRUIT FRUIT_B
FROM BASKET_A A
FULL OUTER JOIN BASKET_B B ON A.FRUIT = B.FRUIT
WHERE A.ID IS NULL OR B.ID IS NULL;

 

 3)  EMPLOYEES 테이블과 DEPARTMENTS 테이블을 FULL OUTER 조인

SELECT
	E.EMPLOYEE_NAME,
	D.DEPARTMENT_NAME
FROM EMPLOYEES E
FULL OUTER JOIN DEPARTMENTS D ON D.DEPARTMENT_ID = E.DEPARTMENT_ID;

 

 4)  EMPLOYEES 테이블과 DEPARTMENTS 테이블을 FULL OUTER 조인. 소속한 직원이 없는 부서만 출력.

SELECT 
	E.EMPLOYEE_NAME,
	D.DEPARTMENT_NAME
FROM EMPLOYEES E
FULL OUTER JOIN DEPARTMENTS D ON D.DEPARTMENT_ID = E.DEPARTMENT_ID
WHERE E.EMPLOYEE_NAME IS NULL;

-- RIGHT JOIN 사용
SELECT
	E.EMPLOYEE_NAME,
	D.DEPARTMENT_NAME
FROM EMPLOYEES E
RIGHT JOIN DEPARTMENTS D ON D.DEPARTMENT_ID = E.DEPARTMENT_ID
WHERE E.EMPLOYEE_NAME IS NULL;

 

 5)  EMPLOYEES 테이블과 DEPARTMENTS 테이블을 FULL OUTER 조인. 소속한 부서가 없는 직원만 출력.

SELECT
	E.EMPLOYEE_NAME,
	D.DEPARTMENT_NAME
FROM EMPLOYEES E
FULL OUTER JOIN DEPARTMENTS D ON D.DEPARTMENT_ID = E.DEPARTMENT_ID
WHERE D.DEPARTMENT_ID IS NULL;

-- LEFT JOIN 사용
SELECT
	E.EMPLOYEE_NAME,
	D.DEPARTMENT_NAME
FROM EMPLOYEES E
LEFT JOIN DEPARTMENTS D ON D.DEPARTMENT_ID = E.DEPARTMENT_ID
WHERE D.DEPARTMENT_ID IS NULL;

 

저작자표시 비영리 변경금지 (새창열림)

'Database > PostgreSQL' 카테고리의 다른 글

[PostgreSQL] PostgreSQL GROUP BY 절  (0) 2024.06.11
[PostgreSQL] PostgreSQL CROSS 조인  (0) 2024.06.11
[PostgreSQL] PostgreSQL SELF 조인  (0) 2024.06.11
[PostgreSQL] PostgreSQL OUTER 조인  (0) 2024.06.11
[PostgreSQL] PostgreSQL INNER 조인  (0) 2024.06.11
'Database/PostgreSQL' 카테고리의 다른 글
  • [PostgreSQL] PostgreSQL GROUP BY 절
  • [PostgreSQL] PostgreSQL CROSS 조인
  • [PostgreSQL] PostgreSQL SELF 조인
  • [PostgreSQL] PostgreSQL OUTER 조인
woojin._.
woojin._.
여러가지 개발을 해보며 발생하는 이야기들에 대한 블로그입니다:)
  • woojin._.
    Jin's Dev Story
    woojin._.
  • 전체
    오늘
    어제
    • 분류 전체보기 (829)
      • Tools (25)
        • eGovFrame (3)
        • GeoServer (3)
        • QGIS (2)
        • LabelImg (2)
        • Git (6)
        • GitHub (1)
        • Eclipse (7)
        • Visual Studio (1)
      • Web & Android (121)
        • SpringBoot (37)
        • Three.js (2)
        • Spring Data JPA (9)
        • 스프링 부트 쇼핑몰 프로젝트 with JPA (25)
        • Thymeleaf (4)
        • Spring Security (15)
        • Flutter (29)
      • Programming Language (61)
        • JAVA (27)
        • JavaScript (14)
        • Dart (2)
        • Python (15)
        • PHP (3)
      • Database (43)
        • PostgreSQL (32)
        • MYSQL (7)
        • Oracle (3)
        • MSSQL (1)
      • SERVER (17)
        • TCP_IP (3)
        • 리눅스 (7)
        • AWS (7)
      • Coding Test (445)
        • 백준[JAVA] (108)
        • 프로그래머스[JAVA] (260)
        • 알고리즘 고득점 Kit[JAVA] (3)
        • SQL 고득점 Kit[ORACLE] (74)
      • CS 지식 (49)
        • [자료구조] (14)
        • [네트워크] (12)
        • [데이터베이스] (10)
        • [알고리즘] (9)
        • [운영체제] (4)
      • 기타 (6)
      • 자격증 & 공부 (62)
        • 정보처리기사 (2)
        • SQLD (6)
        • 네트워크관리사 2급 (5)
        • 리눅스마스터 1급 (44)
        • 리눅스마스터 2급 (1)
        • ISTQB (3)
        • 시스템보안 (1)
  • 블로그 메뉴

    • 홈
    • 태그
    • 방명록
  • 인기 글

  • 태그

    시큐리티
    프로그래머스
    자바
    Linux
    Flutter
    pcce 기출문제
    리눅스마스터 1급
    springboot
    CS
    리눅스마스터
    리눅스
    백준
    baekjoon
    Oracle
    스프링 부트 쇼핑몰 프로젝트 with JPA
    JPA
    스프링
    데이터베이스
    backjoon
    DB
    스프링부트
    spring
    postgresql
    플러터
    programmers
    Java
    데이터
    Spring Security
    python
    CS지식
  • 최근 글

  • hELLO· Designed By정상우.v4.10.0
woojin._.
[PostgreSQL] PostgreSQL FULL OUTER 조인
상단으로

티스토리툴바