次の方法で共有


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

キューブまたはサブキューブのデータを定義、操作、または取得するには、多次元式 (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 ステートメントを使用して、[Measures] で構成されるサブキューブへの割り当てを制限します。[インターネット販売額]:

SCOPE([Measures].[Internet Sales Amount]);  
This=1;  
END SCOPE;  

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

関連項目

基本的な MDX クエリ (MDX) を する
MDX (MDX)
でのサブキューブの構築の
CREATE SUBCUBE ステートメント (MDX)

式 (MDX)
SCOPE ステートメント (MDX)