SUBQUERY
- 하나의 질의문 내부에 하나 이상의 다른 질의문이 포함되어 그 결과를 이용할 때 내부에 포함된 쿼리문을 말함
- Group by절을 제외하고는 어디든 위치할 수 있음
NESTED SUBQUERY
- 서브쿼리가 WHERE절에서 사용된 경우 NESTED SUBQUERY라고 함
- NESTED SUBQUERY가 Main Query보다 먼저 실행될 때 속도를 낼 수 있는 유형임
- 단, 서브쿼리 쪽에서 조회하는 Main Query값에 인덱스가 없으면 서브쿼리는 먼저 실행되지 않음
CORRELATED SUBQUERY
- 서브쿼리가 WHERE절에서 사용되고 메인 쿼리에서 데이터를 하나씩 읽을때마다
서브쿼리가 실행되어 데이터를 리턴하는 서브쿼리를 CORRELATED SUBQUERY라고 함
메인쿼리에서 데이터를 읽고 있는 ROW수 만큼 서브쿼리가 실행됨
SCALAR SUBQUERY
- 단 하나의 데이터와 단 하나의 칼럼에 대한 정보를 리턴함
- SCALAR SUBQUERY 사용 위치
- Select List항목, 함수의 인자, WHERE절의 조건,Order by 절,case 조건절,case 결과절
ROLLUP & CUBE
- ROLLUP : 데이터의 총계를 나타낼때 사용하는 함수
- CUBE : 데이터의 소계를 나타낼 때 사용하는 함수
GROUPING SETS()
여러 개의 GROUP BY 쿼리를 동시에 실행한 것과 같은 결과를 나타냄
GROUPING SETS()로 ROLLUP(),CUBE(),ROLLUP()&CUBE()구현이 가능함
ANALYTIC FUNCTIONS
행과 행 간의 관계를 정의하거나 비교,연산하기 위해 사용함
Arguments | 함수에 따라 0~3개의 인자가 지정됨 |
Partition By절 | 전체 집합을 기준에 의해 소그룹으로 나눔 |
Orfer By 절 | 어떤 항목에 대한 정렬 기준을 기술함 |
Windowing 절 | 함수에 의해서 제어하고자 하는 데이터 범위를 정의함 |
ANALYTIC FUNCTIONS 종류
- 그룹 내 테이터 순위 : ROW_NUMBER,RANK,DENSE_RANK
- 그룹 내 비율 : RATIO_TO_REPORT
'IT > DB' 카테고리의 다른 글
[DB]데이터타입과 키 타입 (0) | 2022.01.07 |
---|---|
데이터베이스의 기본 개념 (0) | 2022.01.03 |
[SQL] CARTESIAN PRODUCT (0) | 2021.11.29 |
[SQL] SORT/MERGE JOIN (0) | 2021.11.29 |
[SQL] NESTED LOOPS JOIN 조인 (0) | 2021.11.29 |