EQUI JOIN 관련

최대 1 분 소요

EQUI JOIN 요약

  • JOIN 문법에는 ANSI JOIN , ORACLE JOIN 이 있는데, 오라클을 사용하는 경우는 oracle join방식으로 해야 성능이 더나음.(사실 별차이 없음)
  • ANSI 문법으로 할 경우 변환과정 때문에 느려짐
  • 기본방식
    ORACLE:
       A.KEY = B.KEY  
    ANSI:
      FROM KEY1 A JOIN KEY2 A ON (A.KEY = B.KEY)  
    
  • 조인조건의 순서는 상관없다.(성능에 전혀 지장이 없음)

EQUI JOIN 예제

예제 1

--위치 상관 없이 키값 기준 데이터가 더 많은 쪽을 기준으로 데이터가 출력!!
SELECT A.NAME, A.PROFNO, B.NAME
FROM STUDENT A, PROFESSOR B
WHERE B.PROFNO = A.PROFNO;

예제 2

--ANSI 방식
SELECT A.NAME, B.DNAME , C.NAME  
FROM STUDENT A JOIN  DEPARTMENT B 
ON A.DEPTNO1 = B.DEPTNO
JOIN  PROFESSOR C
ON A.PROFNO = C.PROFNO;
--ORACLE 방식
SELECT A.NAME, B.DNAME , C.NAME  
FROM STUDENT A, DEPARTMENT B, PROFESSOR C
WHERE A.DEPTNO1 = B.DEPTNO
    AND A.PROFNO = C.PROFNO;

예제 3

SELECT B.NAME, B.POSITION, B.PAY,  A.S_PAY, A.E_PAY
FROM P_GRADE A, EMP2 B
WHERE A.POSITION = B.POSITION

댓글남기기