27강 SQL이 뭐지? PostgreSQL CUBE
PostgreSQL
SQL이 뭐지? 27강 시작합니다.
이번 강의에서는
▶ PostgreSQL CUBE
에 대해서 알아보겠습니다.
여러 그룹 집합을 생성하는 PostgreSQL CUBE에 대해서 알아봅니다.
Introduction to the PostgreSQL CUBE
PostgreSQL CUBE는 GROUP BY 절의 하위 절이다. CUBE를 사용하면 여러 그룹화 세트를 생성할 수 있습니다.
그룹화 집합은 그룹화할 열 집합입니다. 그룹화 세트에 대한 자세한 내용은 GROUPING SETS 강의를 참조하십시오.
다음은 CUBE 하위 절의 구문을 보여줍니다.
SSELECT
c1,
c2,
c3,
aggregate (c4)
FROM
table_name
GROUP BY
CUBE (c1, c2, c3);
이 구문은:
먼저 SELECT 문의 GROUP BY 절에 CUBE 하위 절을 지정합니다.
둘째, 선택 목록에서 분석할 열(차원 또는 차원 열)과 집계 함수 식을 지정합니다.
셋째, GROUP BY 절에서 CUBE 하위 절의 괄호 안에 치수 열을 지정합니다.
쿼리는 CUBE에 지정된 차원 열을 기준으로 가능한 모든 그룹화 집합을 생성합니다. CUBE 하위 절은 여러 그룹 집합을 정의하는 간단한 방법이므로 다음과 같습니다.
CUBE(c1,c2,c3)
GROUPING SETS (
(c1,c2,c3),
(c1,c2),
(c1,c3),
(c2,c3),
(c1),
(c2),
(c3),
()
)
일반적으로 CUBE에 지정된 열 수가 n개이면, GROUPING SETS는 2n개의 조합이 됩니다.
PostgreSQL을 사용하면 부분 큐브를 수행하여 계산된 집계 수를 줄일 수 있습니다. 다음은 구문을 보여줍니다.
SELECT
c1,
c2,
c3,
aggregate (c4)
FROM
table_name
GROUP BY
c1,
CUBE (c1, c2);
PostgreSQL CUBE examples
26강 GROUPING SETS에서 작성한 sales 테이블을 실습에 사용합니다.
SELECT
brand,
segment,
SUM (quantity)
FROM
sales
GROUP BY
CUBE (brand, segment)
ORDER BY
brand,
segment;
다음 쿼리는 부분 큐브를 수행합니다.
SELECT
brand,
segment,
SUM (quantity)
FROM
sales
GROUP BY
brand,
CUBE (segment)
ORDER BY
brand,
segment;
이번 강의에서는 PostgreSQL CUBE를 사용하여 여러 그룹 집합을 생성하는 방법을 배웠습니다.
수고하셨습니다.
다음 강의에서 만나요.
본 강의는 PostgreSQL Tutorial을 참조합니다.
실습용 테이블에 대해서는 3강을 참조하세요.
Do it! SQL을 찾아 주셔서 감사합니다. 여러분의 댓글이 큰 힘이 됩니다. |
'IT > SQL 기초강좌 (PostgreSQL)' 카테고리의 다른 글
29강 SQL이 뭐지? PostgreSQL Subquery (2) | 2022.12.20 |
---|---|
28강 SQL이 뭐지? PostgreSQL ROLLUP (2) | 2022.12.20 |
26강 SQL이 뭐지? PostgreSQL GROUPING SETS (3) | 2022.12.20 |
25강 SQL이 뭐지? PostgreSQL HAVING (2) | 2022.12.20 |
24강 SQL이 뭐지? PostgreSQL INTERSECT (2) | 2022.12.19 |
댓글