본문 바로가기

Database/MS SQL

MS SQL。ROLLUP, CUBE, GROUPING(소계, 합계)

728x90
반응형

# ROLLUP

그룹간의 소계, 합계, GROUP BY 항목의 오른쪽에서 왼쪽순으로 그룹을 묶어 집계

 

1.
SELECT [필드 OR 집계함수]
  FROM [테이블명]
 GROUP BY [필드]
  WITH ROLLUP
 
2.
SELECT [필드 OR 집계함수]
  FROM [테이블명]
 GROUP BY [필드], ROLLUP([필드])

 

# CUBE

GROUP BY 항목들 간 모든 경우의 수로 그룹을 생성하여 집계

 

1.
SELECT [필드 OR 집계함수]
  FROM [테이블명]
 GROUP BY [필드]
  WITH CUBE
 
2.
SELECT [필드 OR 집계함수]
  FROM [테이블명]
 GROUP BY [필드], CUBE([필드])

 

 

# GROUPING

집계 여부 반환, 집계된 경우 결과 집합에 1 반환, 집계되지 않은 경우 0 반환

 

SELECT GROUPING([필드])
  FROM [테이블명]
[GROUP BY]
[HAVING]
[ORDER BY]

 

ROLLUP

 

CUBE

728x90
반응형

'Database > MS SQL' 카테고리의 다른 글

MS SQL。데이터 반전(REVERSE)  (0) 2020.11.02
MS SQL。공백 제거(TRIM, LTRIM, RTRIM)  (0) 2020.11.01
MS SQL。정렬(ORDER BY)  (0) 2020.10.30
MS SQL。HAVING  (0) 2020.10.29
MS SQL。중복 제거(DISTINCT, GROUP BY)  (0) 2020.10.28