次の方法で共有


キューブ式とサブキューブ式の使用

多次元式 (MDX) ステートメントでは、キューブまたはサブキューブのデータを定義、操作、または取得するために、キューブ式やサブキューブ式を使用します。

キューブ式

キューブ式にはキューブ識別子または CURRENTCUBE キーワードが含まれているため、単純な式のみを指定できます。 多くの MDX ステートメントでは、キューブ識別子を必要とするのではなく、CURRENTCUBE キーワードを使用して現在のキューブ コンテキストを識別します。

キューブ識別子は、MDX ステートメントの BNF 表記の説明に Cube_Name として表示されます。

キューブ式は、いくつかの場所に表示される場合があります。 MDX の SELECT ステートメントでは、キューブ式は、データの取得元のキューブを指定します。 次のクエリ例では、式 [Adventure Works] はその名前のキューブを参照しています。

SELECT [Measures].[Internet Sales Amount] ON COLUMNS

FROM [Adventure Works]

CREATE MEMBER ステートメントでは、キューブ式は、作成中の計算されるメンバーが表示されるキューブを指定します。 次の例では、 ステートメントによって Adventure Works キューブの Measures ディメンションに計算メジャーが作成されます。

CREATE MEMBER [Adventure Works].[Measures].[Test] AS 1

MDX スクリプト内で CREATE MEMBER ステートメントを使用する場合、計算されるメンバーを作成するキューブは、次の例に示すように、MDX スクリプトが属するキューブと同じである必要があるため、キューブの名前を CURRENTCUBE キーワードに置き換えることができます。

CREATE MEMBER CURRENTCUBE.[Measures].[Test] AS 1;

これにより、キューブの名前がハードコーディングされなくなったため、計算されるメンバー定義を 1 つのキューブから別のキューブに簡単にコピーして貼り付けることができます。

SubCube 式

サブキューブ式には、サブキューブ識別子、またはサブキューブを返す MDX ステートメントを含めることができます。 サブキューブ式にサブキューブ識別子が含まれている場合は、単純な式になります。 サブキューブを返す MDX ステートメントが含まれている場合は、複合ステートメントです。 たとえば、次の例に示すように、MDX の SELECT ステートメントは、サブキューブを返すので、サブキューブ式が許可されている場所で使用できます。

SELECT [Measures].MEMBERS ON COLUMNS,

[Date].[Calendar Year].MEMBERS ON ROWS

FROM

(SELECT [Measures].[Internet Sales Amount] ON COLUMNS,

[Date].[Calendar Year].&[2004] ON ROWS

FROM [Adventure Works])

FROM 句での SELECT ステートメントのこの使用は、サブセレクトとも呼ばれます。

サブキューブ式が発生するもう 1 つの一般的なシナリオは、MDX スクリプトでスコープ割り当てを行う場合です。 次の例では、SCOPE ステートメントを使用して、[メジャー] で構成されるサブキューブへの割り当てを制限します。[インターネット販売額]:

SCOPE([Measures].[Internet Sales Amount]);

This=1;

END SCOPE;

サブキューブ識別子は Subcube_Nameとして表示されます。 MDX ステートメントの BNF 表記の説明。

参照

MDX の基本的なクエリ (MDX)
MDX でのサブキューブの作成 (MDX)
CREATE SUBCUBE ステートメント (MDX)
式 (MDX)
SCOPE ステートメント (MDX)