검색결과 리스트
글
둘다 누적에 대한 통계에 이용하면 편리한 내용이다.
ROLLUP의 경우 각 해당하는 분야에 대하여 데이터가 있다면 누적이 되서 그 기준에 대하여 통계를 나타낸다.
다음은 그 예제이다.
SELECT A.NAME, A.TITLE, SUM(B.QTY)
FROM t_table A, t_table_sec B
WHERE A.ID = B.ID
GROUP BY ROLLUP (A.NAME, A.TITLE)
위 쿼리에 대한 결과는 대략 아래와 같다.
A.NAME A.TITLE QTY
------- ------- -----
JIM A 3
JIM B 2
JIM 5
BOBBY C 1
BOBBY A 2
BOBBY 3
8
하지만 각기 TITLE별의 총 합을 보려면 TITLE에 대한 것만 또다시 SELECT 하여 ROLLUP 한 것을 UNION 키셔 줘야한다. 즉 두번의 ROLLUP이 들어간다는 것이다.
하지만 큐브를 사용하면 아래와 같은 결과를 가질 수가 있다.
SELECT A.NAME, A.TITLE, SUM(B.QTY)
FROM t_table A, t_table_sec B
WHERE A.ID = B.ID
GROUP BY CUBE (A.NAME, A.TITLE)
A.NAME A.TITLE QTY
------- ------- -----
JIM A 3
JIM B 2
JIM 5
BOBBY C 1
BOBBY A 2
BOBBY 3
A 5
B 2
C 1
RECENT COMMENT