SQLD

SQLD 개념정리 (그룹함수)

chojdsj 2023. 11. 9. 16:57
728x90

 

 

그룹 함수

 

 

- 전체 집계와 소계를 한번에 구하는 함수

 

- Group By절 안에 다음 집계함수 사용

 

 

 

 

 

* ROLLUP 함수

 

- A를 기준으로 소계 및 합계 생성

 

 

 

 

 

 

 

1) 날짜별,음료별,직원별 합계 = 1

2) 날짜별, 음료별(아메리카노) 합계 = 3

3) 날짜별 합계(20190801) = 8

 

 

 

 

 

 

 

* CUBE 함수

 

- 가능한 모든 조합의 소계 및 합계를 생성 -> 시스템에 무리가 갈 수 있음

 

 

 

 

 

 

* GROUPING SETS 함수

 

- 내가 보고싶은 것만 소계를 생성

 

 

 

 

-> GROUPING SETS(A,B) = GROUPING SETS(B,A)  결과 같음

 

 

 

 

 

-> 각 그룹의 합계를 보여준다.

 

 

 

 

 

 

 

 

 

윈도우 함수

 

 

- 전체 테이블 중에서 내가 원하는 일부만 작은 테이블로 만들어서 분석

 

 

 

 

* 윈도우 함수 종류

 

 

 

 

 

 

 

* 윈도우 함수의 윈도우 절

 

- ROWS : 행의 수를 선택할 때 사용

 

- RANGE : 값의 범위를 선택할 때 사용

 

 

 

* ROWS

 

 

 

 

* ROWS의 범위 지정

 

 

 

 

* RANGE

 

- ROW는 행의 위치를 기준으로 행을 선택한다면 RANGE는 칼럼의 값을 기준으로 연산에 참여할 행을 선택한다.

 

 

-> 현재행이 JAMES 950이라면 위에 SMITH는 950에서 150이하이기 때문에 SUM적용
-> 만약 150보다 범위가 클 경우 적용 안됨. SMITH의 SAL이 799이면 적용안됨

 

 

* RANGE의 범위 지정

 

 

 

 

 

 

 

 

 

 

 

 

 

'SQLD' 카테고리의 다른 글

SQLD 개념정리 (윈도우 함수)  (0) 2023.11.10
SQLD 개념정리 (GROUPING)  (0) 2023.11.09
SQLD 개념정리 (View)  (0) 2023.11.08
SQLD 개념정리 (서브 쿼리)  (0) 2023.11.07
SQLD 개념정리 (계층형 질의, 셀프조인)  (0) 2023.11.07