<EQUI JOIN>
- 서로 다른 테이블에 있는 컬럼들의 데이터를 하나의 결과로 조인해서 출력
▼ 사원(emp)테이블, 부서(dept)테이블을 조인하여 이름과 부서 위치를 출력
- 먼저 사원테이블을 살펴보면
- 부서테이블은
▷ 사원(emp)테이블의 부서(deptno)과 : emp.deptno
부서(dept)테이블의 부서(deptno)가 일치시켜 : dept.deptno
직원(ename)이 어디서일하고있는지(loc)를 출력
- ename은 emp_TB에 있고 loc은 dept_TB에 있으므로 from 절에 둘 다 적고
- emp.deptno = dept.deptno 라는 조건을 주어 조인을 수행.
▷ ename의 deptno를 가져와서 dept의 deptno와 일치시켜 loc를 출력
▶ ▶ ▶ 이것을 EQUI JOIN이라고 함.
: 조인 조건이 이퀄이면 EQUI JOIN
▼ 위의 결과에서 직업이 ANALYST인 사원들만 출력하기
- and를 써서 두가지 조건이 모두 되는 것을 출력하도록 쿼리 작성함.
▷ emp.deptno = dept.deptno 는 조인 조건. emp.job ='ANALYST'는 검색 조건
▼deptno도 출력해보기
▷ deptno는 emp에도 있고 dept에도 있기 때문에 정확히 어디에서 불러올지 지정해줘야함.
만일 검색 속도 향상을 위해서라면
▶ 하나하나 어느 테이블에서 불러오는게 좋은지 적어주는 것도 좋다.
근데 테이블명이 길어서 짧게 별칭을 사용하고 싶다면
위와 같이 별칭을 지정해서 쿼리작성도 가능하다.
(별칭을 지정했으면 기존 테이블 이름인 emp, dept를 작성하면 오류난다)
'데이터베이스 > SQL' 카테고리의 다른 글
SQL 여러테이블 데이터 조인 Oracle OUTER JOIN (0) | 2023.12.28 |
---|---|
SQL 여러테이블 데이터 조인 Oracle NON EQUI JOIN (0) | 2023.12.28 |
SQL 출력되는 행 제한하기 ROWNUM, Simple TOP-n Queries (0) | 2023.12.24 |
SQL 데이터분석함수 GROUPING SETS, ROW_NUMBER (0) | 2023.12.18 |
SQL 데이터분석함수 SUM OVER, RATIO_TO_REPORT, ROLLUP, CUBE (0) | 2023.12.15 |