728x90
반응형
GROUP 함수
GROUP BY
SELECT 성별, 연령대, count(회원코드)
FROM C_INFO
GROUP BY 성별, 연령대;
- GROUP BY 성별, 연령
- 성별*연령 별 합계
GROUP BY : ROLLUP
SELECT 성별, 연령, SUM(결제금액)
FROM 결제
GROUP BY ROLLUP(성별, 연령대)
ORDER BY 성별, 연령;
- ROLLUP
- 부분합계와 전체합계 값을 보여준다.
- 인수의 순서에 영향을 받는다.
- GROUP BY ROLLUP 성별, 연령
- 성별*연령 별 합계
- 성별 별 합계
- 전체 합계
GROUP BY : CUBE
SELECT 성별, 연령, SUM(결제금액)
FROM 결제
GROUP BY CUBE(성별, 연령대);
- GROUP BY CUBE (성별, 연령)
- 그룹화 될 수 있는 모든 경우에 대해 생성
- 성별*연령 별 합계
- 성별 별 합계
- 연령 별 합계
- 전체합계
GROUP BY : GROUPING SET 1
SELECT 성별, 연령, SUM(결제금액)
FROM 결제
GROUP BY GROUPING SETS(성별, 연령대);
- GROUP BY GROUPING SETS(성별, 연령)
- 성별 별 합계
- 연령 별 합계
- 괄호 묶은 집합별 집계가능
GROUP BY : GROUPING SET 2
GROUPING 함수
- 소계, 합계 등이 계산되면 1을 반환하고, 아니면 0을 반환한다.
- 기존의 ROLLUP 케이스
SELECT 성별, 연령, SUM(결제금액)
FROM 결제
GROUP BY ROLLUP(성별, 연령대)
ORDER BY 성별, 연령;
- GROUPING 활용 시
SELECT 성별, GROUPING(성별) g1, 연령, GROUPING(연령) g2, SUM(결제금액)
FROM 결제
GROUP BY ROLLUP(성별, 연령대)
ORDER BY 성별, 연령;
문제
정답
SELECT 성별, CASE WHEN GROUPING(성별) = 1
THEN ‘전체합계’ END
AS g1
, 연령, GROUPING(연령) g2, SUM(결제금액)
FROM 결제
GROUP BY ROLLUP( 성별, 연령대 )
ORDER BY 성별, 연령 ;
문제
정답
2, CUBE는 가능한 모든 조합
문제
정답
1, 2
1번 해설 : CUBE는 가능한 모든 조합, 1번 보기의 설명은 ROLLUP에 해당
문제
정답
문제
정답
SQLD 목차 바로가기
728x90
반응형
'자격증 > SQLD' 카테고리의 다른 글
[SQLD 자격증] 2과목 | 계층형 조회 설명 & 문제풀이 (0) | 2023.03.06 |
---|---|
[SQLD 자격증] 2과목 | JOIN, UNION, MINUS, 서브쿼리 설명 & 문제풀이 (0) | 2023.03.06 |
[SQLD 자격증] 2과목 | NULL 함수, GROUP BY, HAVING, ROWNUM & ROWID 설명 & 문제풀이 (0) | 2023.03.04 |
[SQLD 자격증] 2과목 | WHERE 절 연산자, 문자열 연산자, 임시테이블, VIEW 설명 & 문제풀이 (0) | 2023.03.04 |
[SQLD 자격증] 2과목 | DML(SELECT) DECODE, CASE WHEN, ORDER BY (0) | 2023.03.01 |
댓글