오라클 rollup 예제

CUBE, ROLLUP 및 Top-N 쿼리를 설명하기 위해 이 장에서는 가상의 비디오 테이프 판매 및 임대 회사를 사용합니다. 제공된 모든 예제는 이 시나리오의 데이터를 참조합니다. 가상의 회사는 여러 지역에 매장을 보유하고 있으며 매출 및 이익 정보를 추적합니다. 데이터는 시간, 부서 및 지역이라는 세 가지 차원으로 분류됩니다. 시간 크기는 1996년과 1997년이며, 부서는 비디오 판매 및 비디오 대여이며 지역은 동부, 서부 및 중부입니다. 연결된 그룹화는 쉼표로 구분된 여러 그룹화 집합, CUBEs 또는 ROLLUPs를 함께 배치하여 정의됩니다. 생성된 그룹화는 개별 그룹화 세트에 의해 생성된 모든 그룹의 교차 곱입니다. 예를 보면 이것이 무엇을 의미하는지 이해하는 것이 조금 더 쉬울 수 있습니다. 다음 그룹화 SET은 fact_1_id 열에 대한 그룹과 fact_id_2 열에 대해 하나씩 하위 계열의 2개 그룹으로 생성됩니다. 오라클 데이터베이스 기술에 대한 수업, 운동 및 퀴즈.

운동을 통한 전문성! Oracle8i는 GROUP BY 절에 대한 새로운 큐브 및 롤업 확장을 통해 이러한 모든 이점을 제공합니다. 이러한 확장은 SQL3에 대한 ANSI 및 ISO 제안을 준수하며, 이는 SQL에 대한 향상을 위한 초안 표준입니다. 이 예제에서는 그룹화를 사용하여 표 20-3에 표시된 결과 집합에 대한 마스크 열 집합을 만듭니다. 마스크 컬럼은 프로그래밍 방식으로 쉽게 분석할 수 있습니다. 향상된 Top-N 쿼리를 사용하면 데이터 집합의 가장 크고 작은 값을 보다 효율적으로 검색할 수 있습니다. 이 장에서는 큐브, 롤업 및 Top-N 분석의 개념, 구문 및 예제를 제공합니다. 롤업 및 큐브에서 생성된 하위 토더를 시각적으로 식별하는 것은 매우 쉬울 수 있지만 프로그래밍 방식으로 수행하려면 그룹화 열에 null 값이 있는 것보다 더 정확한 것이 필요합니다. 여기서 그룹화 함수가 들어옵니다. 단일 열을 매개 변수로 받아들이고 롤업 또는 CUBE 작업으로 하위 계열의 일부로 생성된 null 값을 열면 “1”을 반환하거나 저장된 null 값을 포함하여 다른 값에 대해 “0”을 반환합니다.

이 예제의 숫자는 다른 그림에 사용된 집합과 다릅니다. 오라클은 ORACLE8i 릴리스 8.1.5에서 SQL에 대한 큐브 및 롤업 확장을 통해 분석 애플리케이션에 대한 오랜 지원을 확장합니다. 또한 오라클은 Top-N 쿼리에 최적화된 성능과 간소화된 구문을 제공합니다. 이러한 향상된 기능을 통해 중요한 계산을 훨씬 쉽고 효율적으로 만들어 데이터베이스 성능, 확장성 및 단순성을 향상시킬 수 있습니다. 이 예제를 보강하여 단일 쿼리에서 영업 담당자의 영업 및 커미션 순위를 표시할 수 있습니다. 이제 쿼리를 확장하여 모든 판매에서 획득한 판매 수수료를 “커미션” 열에 저장합니다. 추가 정보에는 중첩된 하위 쿼리의 또 다른 계층이 필요합니다. 여러 계층의 쿼리를 해석하는 것은 어려울 수 있지만 의미를 명확히 하기 위해 아래 SQL의 형식이 지정되었습니다. 이 문서에서는 Oracle 데이터베이스 SQL Expert(1Z0-047) 시험에 필요한 정보에 중점을 두고 데이터 웨어하우스에서 집계에 사용할 수 있는 기능에 대한 개요를 제공합니다.

이 백서의 그림에 표시된 눌은 명확성을 위해서만 표시됩니다: 표준 Oracle 출력에서는 이러한 셀이 비어 있습니다. 롤업의 이 예는 비디오 저장소 데이터베이스의 데이터를 사용합니다. 이 문서의 예제는 다음과 같은 간단한 차원 테이블에 대해 실행됩니다.

Posted in Uncategorized