기본 MDX 스크립트(MDX)

적용 대상: SQL Server Analysis Services Azure Analysis Services 패브릭/Power BI Premium

MDX(다차원 식) 스크립트는 Microsoft SQL Server SQL Server Analysis Services 큐브에 대한 계산 프로세스를 정의합니다. 다음과 같은 두 가지 유형의 MDX 스크립트가 있습니다.

기본 MDX 스크립트
큐브를 만들 때 SQL Server Analysis Services 해당 큐브에 대한 기본 MDX 스크립트를 만듭니다. 이 스크립트는 전체 큐브에 대한 계산 패스를 정의합니다.

사용자 정의 MDX 스크립트
큐브를 만든 후 큐브의 계산 기능을 확장하는 사용자 정의 MDX 스크립트를 추가할 수 있습니다.

기본 MDX 스크립트

큐브를 정의할 때 SQL Server Analysis Services 만드는 기본 MDX 스크립트에는 단일 CALCULATE 문이 포함되어 있습니다. 이 단일 CALCULATE 문은 기본 MDX 스크립트 시작 부분에 있고 첫 번째 계산 패스 중에 전체 큐브를 계산해야 함을 나타냅니다.

또한 기본 MDX 스크립트에는 큐브 디자이너에서 만든 명명된 집합, 대입 식 및 계산 멤버를 만드는 스크립트 명령도 포함됩니다.

  • SQL Server Analysis Services 스크립트 명령을 기본 MDX 스크립트에 직접 추가합니다.

  • 큐브에 있는 각각의 명명된 집합의 경우 해당 CREATE SET 문이 기본 MDX 스크립트에 존재합니다.

  • 큐브에서 정의한 각각의 계산 멤버의 경우 해당 CREATE MEMBER 문이 기본 MDX 스크립트에 존재합니다.

큐브 디자이너의 계산 탭을 사용하여 기본 MDX 스크립트에 있는 스크립트 명령, 명명된 집합 및 계산 멤버의 순서를 제어할 수 있습니다. 기본 MDX 스크립트에 저장된 계산 정의에 대한 자세한 내용은 다차원 모델의 계산을 참조하세요.

큐브와 연결된 MDX 스크립트가 없는 경우 큐브는 기본 MDX 스크립트를 사용합니다. 큐브는 MDX 스크립트에 따라 계산 동작을 결정하므로 큐브는 최소한 하나 이상의 MDX 스크립트와 연결되어야 합니다. 즉, MDX 스크립트와 연결되지 않았거나 빈 MDX 스크립트와 연결된 큐브는 어떤 셀도 계산하지 못할뿐더러 계산하지 않습니다. ASSL(Analysis Services Scripting Language) 명령 또는 AMO(Analysis Management Objects)를 사용하여 프로그래밍 방식으로 큐브를 만드는 경우에는 해당 큐브에 대해 단일 CALCULATE 문을 포함한 기본 MDX 스크립트를 만드는 것이 좋습니다.

MDX 스크립트 내용

MDX 스크립트는 다음 문과 식을 포함할 수 있습니다.

모든 MDX 스크립팅 문
MDX 스크립트에서 MDX 스크립팅 문은 계산의 컨텍스트 및 범위를 제어하고 MDX 스크립트에 있는 다른 문의 동작을 관리합니다. 이 범주에는 다음 문이 포함됩니다.

MDX 스크립팅 문에 대한 자세한 내용은 MDX(MDX 스크립팅 문)를 참조하세요.

CREATE MEMBER
CREATE MEMBER 문은 계산 멤버를 만듭니다. 계산 멤버를 만드는 방법에 대한 자세한 내용은 MDX(MDX)에서 계산 멤버 빌드를 참조하세요.

CREATE SET
CREATE SET 문은 명명된 집합을 만듭니다. 이름 집합을 만드는 방법에 대한 자세한 내용은 MDX(MDX)에서 명명된 집합 빌드를 참조하세요.

조건문
조건문은 MDX 스크립트에 조건부 논리를 추가합니다. 이 범주로는 CASEIF 문이 포함됩니다.

대입 식
대입 식은 제약이 있는 하위 큐브에 값과 같이 식을 대입합니다. 제약이 있는 하위 큐브 식은 MDX 스크립트 내에 있는 하위 큐브의 "가장자리"를 정의하는 제약이 있는 집합 식의 컬렉션입니다. 다음 코드에서는 제약이 있는 하위 큐브 식에 대한 구문을 보여 줍니다.

<Constrained subcube> ::= (   
    ( <Constrained set> [<Crossjoin operator> <Constrained set>...] |  
    <ROOT function> |  
    <TREE function> |  
    LEAVES() |  
    * ) [, <Constrained subcube>...]  
<Constrained set> ::=   
    <Natural hierarchy>.MEMBERS |   
    <Natural hierarchy>.LEVEL(<numeric expression>).MEMBERS |   
    { <Natural hierarchy member> } |   
    DESCENDANTS( <Natural hierarchy member>, <Level expression>, ( SELF | AFTER | SELF_AND_AFTER ) ) |   
    DESCENDANTS( <Natural hierarchy member>, , LEAVES )  
<Natural hierarchy> ::= <Hierarchy identifier>  
<Natural hierarchy member> ::= <Natural hierarchy>.<identifier>[.<identifier>...]  

참고 항목

MDX 언어 참조(MDX)
MDX 스크립팅 기본 사항(Analysis Services)