Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | ||||
4 | 5 | 6 | 7 | 8 | 9 | 10 |
11 | 12 | 13 | 14 | 15 | 16 | 17 |
18 | 19 | 20 | 21 | 22 | 23 | 24 |
25 | 26 | 27 | 28 | 29 | 30 | 31 |
Tags
- 태블로 #tableau #비율막대그래프
- 임시테이블
- ID만들기
- 날짜포멧
- 변수 생성
- SQL
- REPLICATE
- 이전행
- numeric
- Date Format
- indexOf
- 소계
- 날짜형식
- Lead
- Date
- SQLSearch
- mssql
- altertable
- 테이블조회
- Temp Table
- 총계
- 테이블정보
- LAG
- replace
- 문자 숫자 조합 문자
- object검색
- 다음행
- grouping sets
- 숫자변환
- sqlsearch설치
Archives
- Today
- Total
Data Scientist
[MSSQL] 다중 GROUP 지정 GROUP BY GROUPING SETS 본문
SQL에서 간단한 통계를 내고자 할 때 GROUP BY 구문을 자주 사용하곤 한다. 그러나 여러번의 GROUP BY가 필요한 소계, 총계 등이 섞여 있다면 그것을 한방에 해결해 줄 구분이 바로 GROUP BY GROUPING SETS 이다. 사용법 또한 매우 간단하고 직관적이다.
작성 방법
SELECT
SEX_TP_CD,
AGG,
ym,
SUM(SAL) AS SAL_SUM
FROM EMP_MAST
GROUP BY GROUPING SETS
(
(),
(SEX_TP_CD),
(SEX_TP_CD, AGG),
(SEX_TP_CD, AGG, ym)
)
원하는 GROUP BY 조건을 GROUPING SETS 안에 괄호() 안에 나열해주면 된다. GROUP BY 조건에 따라서 명칭이 NULL이 나오는 경우는 ISNULL() 함수를 이용하여 값을 대체해주면 더욱 깔끔하게 마무리 지을 수 있다.
결과
'SQL' 카테고리의 다른 글
[MSSQL] 테이블에 변수 생성하기 (0) | 2020.09.08 |
---|---|
[MSSQL] 문자(VARCHAR)를 숫자 형식 타입 변경 (0) | 2020.09.08 |
[MSSQL] 이전행, 다음행 데이터 조회 LAG, LEAD 함수 (0) | 2020.08.07 |
[MSSQL] 날짜 형식 (DATE FORMAT) (0) | 2020.08.07 |
[MSSQL] 특정 길이만큼 문자 확인 및 채우기 (ID Generator, REPLICATE) (0) | 2020.08.07 |