Oracle - 안티 조인, 셀프 조인

갓김치·2020년 8월 24일
0
post-thumbnail

참고

  • 2020-08-24-01)안티조인.sql
  • 조인이라고 하면 보통 EQUI JOIN을 얘기하는 것임

안티 조인 Anti Join

  • ↔ 세미조인
  • 서브쿼리가 사용되는 조인
  • 서브쿼리의 결과에는 없고 메인쿼리에만 존재하는 데이터만 추출하는 조인
  • NOT IN, NOT EXISTS 연산자 사용

안티 조인 예시

1. 부서테이블에서 관리사원번호(MANAGER_ID)가 NULL이 아닌 부서에 속한 사원의 사원번호, 사원명, 부서명을 출력

안티 조인

세미 조인

결과

  • 사장님(부서:NULL)빼고 출력됨

셀프 조인 Self Join

  • 하나의 테이블을 마치 다른테이블인 것처럼 별도의 별칭을 부여하여 조인하는 형식

셀프 조인 예시

1. 회원테이블에서 회원번호 'c001'회원의 마일리지보다 많은 마일리지를 보유한 회원정보를 조회하시오

  • Alias: 회원번호, 회원명, 마일리지
  1. 우선 A테이블안에는 c001해당 사람만 남는다.
  2. c001만 있는 A테이블과 B테이블끼리 비교해서 조건 해당하는 애들만 결과로 나오게됨
profile
갈 길이 멀다

0개의 댓글