Share via


데이터 요약

의사 결정 지원 시스템을 위해 집계된 트랜잭션 데이터의 요약 보고서를 작성하는 것은 복잡하고 리소스를 많이 사용하는 작업이 될 수 있습니다. SQL Server 데이터를 다차원적으로 분석할 때 프로그래머가 사용하는 주요 도구는 다음과 같은 구성 요소입니다.

  • SQL Server Integration Services

    Integration Services는 데이터 웨어하우스나 데이터 마트에서 트랜잭션 데이터를 추출하여 이를 요약 집계로 변환하는 작업을 지원합니다. 자세한 내용은 개요(Integration Services)를 참조하십시오.

  • SQL Server Analysis Services

    Analysis Services는 데이터 웨어하우스의 데이터를 미리 계산된 요약 정보가 있는 다차원 큐브에 구성합니다. 이 정보는 복잡한 분석 쿼리에 신속한 응답을 제공하는 데 사용됩니다. PivotTable® 서비스는 다차원 데이터에 대한 클라이언트 액세스를 제공합니다. 또한 Analysis Services는 분석 처리에 사용되는 다차원 구조를 정의할 일련의 마법사와 분석 구조를 관리할 Microsoft Management Console 스냅인을 제공합니다. 그러면 응용 프로그램은 API 집합을 사용하여 분석 데이터를 분석합니다. 자세한 내용은 Business Intelligence Development Studio를 사용한 개발 및 구현을 참조하십시오.

단순 요약 보고서에 Transact-SQL 사용

단순 요약 보고서를 생성하는 응용 프로그램은 다음 Transact-SQL 요소를 사용할 수 있습니다.

  • ROLLUP, CUBE 또는 GROUPING SETS 연산자. 이러한 연산자는 모두 SELECT 문의 GROUP BY 절에 대한 확장입니다. 자세한 내용은 GROUP BY(Transact-SQL)를 참조하십시오.

  • COMPUTE 또는 COMPUTE BY 연산자. 이러한 연산자는 GROUP BY와 연관되어 있습니다. 자세한 내용은 COMPUTE 및 COMPUTE BY를 사용한 데이터 요약을 참조하십시오.

이러한 연산자는 결과 집합의 각 항목에 대한 세부 행과 각 그룹별 합계를 보여 주는 요약 행이 포함된 결과 집합을 생성합니다. GROUP BY 절을 사용하여 각 그룹별 합계만 포함하고 세부 행이 없는 결과를 생성할 수도 있습니다.

응용 프로그램은 CUBE, ROLLUP, COMPUTE 또는 COMPUTE BY 대신 Analysis Services를 사용해야 합니다. 특히 CUBE 및 ROLLUP은 스크립트나 저장 프로시저와 같은 OLE DB나 ADO에 액세스할 수 없는 환경에서 사용하도록 예약되어야 합니다.

COMPUTE 및 COMPUTE BY는 이전 버전과의 호환성을 위해 지원됩니다. ROLLUP 연산자는 COMPUTE나 COMPUTE BY보다 선호됩니다. COMPUTE나 COMPUTE BY에 의해 생성된 요약 값은 각 그룹의 세부 행을 반환하는 결과 집합과 인터리브된 별도의 결과 집합이나 주요 결과 집합 뒤에 합계가 추가된 결과 집합으로 반환됩니다. 이와 같이 여러 결과 집합을 처리하려면 응용 프로그램 코드가 복잡해집니다. COMPUTE와 COMPUTE BY 모두 서버 커서에서 지원되지 않습니다. 그러나 ROLLUP은 서버 커서에서 지원됩니다. CUBE 및 ROLLUP은 중간 부분합 및 합계 행이 포함된 단일 결과 집합을 생성합니다. 쿼리 최적화 프로그램도 COMPUTE 및 COMPUTE BY의 실행 계획보다 효율적인 ROLLUP 실행 계획을 생성할 수 있습니다.

이러한 연산자 없이 GROUP BY를 사용하면 그룹별로 집계 부분합이 포함된 행이 하나씩 있는 단일 결과 집합이 반환됩니다. 결과 집합에 세부 행은 포함되지 않습니다.

참고 항목

관련 자료