본문 바로가기
728x90
반응형

DB56

JOIN의 종류 EQUI JOIN : 동일 칼럼을 기준으로 조인. 가장 흔히 사용하는 조인. 연결고리가 없으면 조회가 나오지 않음. NON-EQUI JOIN : 동일 칼럼이 없이 다른 조건을 사용하여 조인 OUTER JOIN : 조인 조건에 만족하지 않는 행도 나타냄 SELF JOIN : 동일 테이블에 서로 다른 별칭을 달아 조인 2022. 12. 23.
CTAS 를 활용한 테이블 생성(서브 쿼리를 활용한 방법), INNER JOIN, FULL OUTER JOIN(ANSI SQL에서만 가능) 예) CREATE TABLE DEPT1 AS SELECT DEPTNO, DNAME FROM DEPT WHERE DEPTNO IN (10, 20); CREATE TABLE DEPT2 AS SELECT DEPTNO, DNAME FROM DEPT WHERE DEPTNO IN (10, 30); 조회를 한다면, 아래 4 문장은 모두 동일한 결과를 준다. SELECT * FROM DEP1 D1, DEP2 D2 WHERE D1.DEPTNO = D2.DEPTNO; ANSI SQL을 사용한 방법들. SELECT * FROM DEP1 D1 JOIN DEP2 D2 ON D1.DEPTNO = D2.DEPTNO; SELECT * FROM DEP1 D1 INNER JOIN DEP2 D2 ON D1.DEPTNO = D2.DEPTN.. 2022. 12. 23.
Outer Join emp 테이블의 직원들이 어느 부서에 속하는지 부서명을 출력해보자. 그런데, 어떤 부서에는 직원이 없을 수 있다. 이런 경우에도, 해당 부서명은 출력 되어야 한다. 이때 Outer Join 을 사용하면 된다. 먼저 데이터를 확인하면 EMP 테이블은 DEPT 테이블은 위에 데이터를 보면, EMP 테이블에 DEPT 테이블의 데이터중 없는게 있으므로, EMP 테이블에 (+) 를 붙여준다. SELECT e.EMPNO, e.ENAME, d.DEPTNO, d.DNAME FROM emp e, dept d WHERE e.deptno(+) = d.deptno ANSI 쿼리로 작성하면.. SELECT e.EMPNO, e.ENAME, d.DEPTNO, d.DNAME FROM emp e right join dept d on .. 2022. 12. 23.
Self Join 자기 참조 조인, Outer Join 3.3 동일한 테이블에 다른 별명을 붙여 마치 여러 개의 테이블 간에 조인하는 것처럼 만들어 조회 대표적인 예가 EMP 테이블의 EMPNO필드와 MGR 필드 를 참조하는것. 테이블에 반드시 별명을 붙여야 함으로 '별명을 이용한 조인'이라고 부른다. 코드성 테이블 부서 테이블이 계층적 관계 (조직도나 메뉴)를 관리할때 사용 SELECT e1.empno, e1.ENAME, e2.empno, e2.ename manager FROM EMP e1, EMP e2 WHERE e1.mgr = e2.empno; 그런데, 결과가 13건이다. 즉, 사장인 KING 이 조회되지 않는다. 이걸 해결하려면, OUTER 조인을 사용해야 함. OUTER 조인을 하려면 '(+)' 기호를 사용하고, WHERE 절의 데이터가 비어있는 쪽.. 2022. 12. 23.
728x90
반응형