-
CROSS JOINSQLD/SQL 기본과 활용 2020. 8. 27. 19:06
1. CROSS JOIN
- 일반 집합 연산자의 PRODUCT 개념으로 테이블 간 조인 조건이 없는 경우 생길 수 있는 모든 데이터의 조합을 출력한다.
- 두개의 테이블에 대한 CROSS PRODUCT의 결과는 M*N 건의 데이터 조합이 발생한다.
ex) (EMP 6건 x DEPT 4건 = 총 24건의 데이터 출력)
- WHERE 절에서 조인 조건을 추가할 경우 INNER JOIN과 같은 결과를 얻는다. (사용 의미가 없다)
- 좌측 테이블 기준으로 곱연산을 한다. (좌측 테이블 데이터 기준으로 출력)
- 보통 튜닝과 리포트 작성, 데이터 웨어하우스의 차원(Dimension)을 fact칼럼과 조인하기전에 모든 차원의 cross product를 먼저 구할때 유용하게 사용된다.
SQL> SELECT A.ENAME, B.DNAME FROM EMP A CROSS JOIN DEPT B; # 실행결과 ENAME DNAME ------------------- Sun 영업 Sun 유통 Sun 생산 Sun 마케팅 Brian 영업 Brian 유통 Brian 생산 Brian 마케팅 Avrin 영업 Avrin 유통 ... 24 개의 행이 선택되었습니다. ''' 조인 조건 사용시 ''' SQL> SELECT A.ENAME, B.DNAME FROM EMP A CROSS JOIN DEPT B WHERE B.DEPTNO = A.DEPTNO; SQL> SELECT A.ENAME, B.DNAME FROM EMP A INNER JOIN DEPT B WHERE B.DEPTNO = A.DEPTNO; # 실행결과는 같음 ENAME DNAME ---------------------------- Sun 영업 Brian 유통 Avrin 마케팅 Chris 생산 John 유통 Sizzled Guy 영업 ... 6 개의 행이 선택되었습니다.
728x90'SQLD > SQL 기본과 활용' 카테고리의 다른 글
단일행 서브쿼리(Single Row SubQuery), 다중행 서브쿼리(Multi Row SubQuery), 다중 칼럼 서브쿼리(Multi Column SubQuery), 연관 서브쿼리(Correlated Subquery) (0) 2020.08.27 OUTER JOIN 심화 (ANSI/ISO SQL 표준방식의 OUTER JOIN) (0) 2020.08.27 다중 테이블 조인(ON 조건절, WHERE 절) (0) 2020.08.27 표준 조인(INNER JOIN, NATURAL JOIN,FROM 조건절, USING 조건절, ON 조건절) (0) 2020.08.27 SQL JOIN(EQUI JOIN, NON-EQUI JOIN, OUTER JOIN) (0) 2020.08.24