본문 바로가기

Oracle DB

서브쿼리 / 집합연산 / Join - Using , On, Outer Join

1. 집계 함수 (Aggregation Fuction)

- NULL값은 집계 함수 연산 참여 X

- NULL + 숫자 = NULL

 

 

2. Sub-Query

- 연관 서브쿼리 : 서브쿼리에 메인쿼리 칼럼 보유. 메인쿼리가 먼저 수행 후 조건 확인

- 비연관 서브쿼리 : 서브쿼리에 메인쿼리 칼럼 미 보유. 서브쿼리 먼저 수행 후 메인에 결과 값을 제공.

- 단일 행 서브쿼리 : 서브쿼리 결과 값이 항상 1건 이하. 단일 행 비교 연산자와 함께 사용

- 다중 행 서브쿼리 : 서브쿼리 결과 값이 여러 건. 다중 행 비교 연산자와 함께 사용 ex) IN

- 다중 칼럼 서브쿼리 : 반환하는 칼럼이 2개 이상인 경우 -> SQL SERVER 불가!

 

 

3. 집합 연산자

- UNION ALL : 합집합, 중복 허용

- UNION (합집합), INTERSECT(교집합), EXCEPT(=MINUS-오라클) 차집합 => 중복제거

 

 

4. Join – Using절, On절

- Natural Join : 두 테이블 중 칼럼 명 동일한 것을 활용. 같은 값만 출력. 테이블 접두사 X

- Using : 두 테이블 중 동일한 칼럼 명 기술, 테이블 접두사 X

- On : ANSI-SQL. 명칭이 상이한 칼럼 간 조인 연결고리 사용 가능. 테이블 접두사 O

 

 

5. Outer Join – On절, Where절 & 전통적인 Join에서 흔한 실수

- On절에서 조건을 기술 할 경우 조건에 맞지 않는 것도 출력. where 절에서는 출력 X

- Outer Join이며, 전통적인 방식의 쿼리일 때 Inner 테이블에 조건을 주고 싶을 경우 반드시 Inner 조건에 Outer 조건(+) 표기 필요.

 

'Oracle DB' 카테고리의 다른 글

소트 튜닝  (0) 2021.04.03
쿼리 변환  (0) 2021.04.03
계층쿼리 / 선분이력 끊기 / 데이터 복제를 통한 소계  (0) 2021.04.03
윈도우 함수  (0) 2021.04.03
조인의 원리 및 활용  (0) 2021.04.03