MDX データ操作 - CREATE SESSION CUBE

既存のサーバー キューブから、セッション キューブを作成および設定します。 セッション キューブは現在のセッション内でのみ表示できます。他のセッションから参照したり、クエリを実行することはできません。 セッション キューブは、セッションが閉じられたときに暗黙的に削除されます。

構文

  
CREATE SESSION CUBE session_cube_name FROM <cube list> (<param list>)  
  
<cube list>::= source_cube_name [,<cube list>]  
  
<param list>::= <param> ,<param list> | <param>  
  
<param>::= <dims list> | <measures list>  
  
<measures list>::= <measure>[, <measures list>]   
  
<dims list>::= <dim def> [, <dims list>]  
  
<measure>::= MEASURE source_cube_name.measure_name [<visibility qualifier>] [AS measure_name]   
  
<dim def>::= <source dim def> | <derived dim def>  
  
<source dim def>::= DIMENSION source_cube_name.dimension_name [<dim flags>] [<visibility qualifier>] [AS dimension_name>] [FROM <dim from clause> ] [<dim content def>]  
  
<dim flags>::= NOT_RELATED_TO_FACTS   
  
<dim from clause>::= <reg dim from clause>   
  
<dim reg from clause>::= dimension_name  
  
<dim content def>::= ( <level list> [,<grouping list>] [,<member slice list>] [,<default member>] )  
  
<level list>::= <level def> [, <level list>]  
  
<level def>::= LEVEL level_name [<level type> ] [AS level_name] [<level content def>]  
  
<level content def>::= ( <property list> ) | NO_PROPERTIES  
  
<level type>::= GROUPING  
  
<property list>::= <property def> [, <property list>]  
  
<property def>::= PROPERTY property_name   
  
<grouping list>::= <grouping entity> [,<grouping list>]  
  
<grouping entity>::= GROUP group_level_name.group_name (<mixed list>)  
  
<grp mixed list>::= <grp mixed element> [,<grp mixed list>]  
  
<grp mixed element>::= <grouping entity> | <member def>  
  
<member slice list>::= <member list>  
  
<member list>::= <member def> [, <member list>]  
  
<member def>::= MEMBER member_name  
  
<default member>::= DEFAULT_MEMBER AS MDX_expression  
  
<visibility qualifier>::= HIDDEN  
  

構文要素

session_cube_name
セッション キューブの名前です。

source_cube_name
作成するセッション キューブの基になるキューブの名前です。

source_cube_name.measure_name
セッション キューブに含まれるソース メジャーの完全修飾名。 メジャー ディメンションの計算メンバーは許可されません。

measure_name
セッション キューブのメジャーの名前です。

source_cube_name.dimension_name
セッション キューブに含まれるソース ディメンションの完全修飾名。

dimension_name
セッション キューブ内のディメンションの名前。

FROM <dim from 句>
派生ディメンション定義に対してのみ有効な指定。

NOT_RELATED_TO_FACTS
派生ディメンション定義に対してのみ有効な指定。

<level type>
派生ディメンション定義に対してのみ有効な指定。

解説

サーバー キューブやローカル キューブと異なり、セッション キューブは、それを作成したセッションの期間を超えて保持されません。 セッション キューブは、それを定義するメジャーと定義の観点から定義されます。 ディメンションには 2 種類あります。

  • ソース ディメンション - これらは、複数のソース キューブの 1 つに含まれるディメンションです。

  • 派生ディメンション - これらは、新しい分析機能を提供するディメンションです。 派生ディメンションには、垂直方向または水平方向にスライスされたソース ディメンションに基づいて定義される標準ディメンション、またはディメンション メンバーのカスタム グループを含む標準ディメンションを指定できます。 また、派生ディメンションは、データ マイニング モデルに基づくデータ マイニング ディメンションである場合もあります。

Note

Dimension キーワードは、ディメンションまたは階層を参照できます。

セッション キューブは、主に、Microsoft Excel などのクライアント アプリケーションによって属性メンバーをカスタム メンバー グループに動的にグループ化するために使用されます。 セッション キューブでは、次のタスクを実行できます。

  • ソース キューブに存在するディメンションを削除する。

  • ディメンションの階層を追加または削除します。

  • メジャー グループまたは特定のメジャーを排除します。

  • 既存の属性に対してグループを作成するために、属性バインドに基づいて新しい属性を追加します。

重要

セッション キューブ オブジェクトのセキュリティは、基になるソース オブジェクトのセキュリティを継承します。 アクションや計算スクリプトなどの他のオブジェクトも、セッション キューブによって継承されます。

CREATE SESSION CUBE ステートメントは、次の規則に従います。

  • 親子階層ではグループ化を実行できません。

  • ROLAP ディメンションに対してグループ化を実行することはできません。

  • リンクされたディメンションに対してグループ化を実行することはできません。

  • カスタム ロールアップを使用してレベルに対してグループ化を実行することはできません。

  • 分離された属性階層ではグループ化を実行できません。

  • レベル間の多対多リレーションシップ (年齢や性別など) を持つ階層である不自然階層に対してグループ化を実行することはできません。

  • MDX スクリプト内でキューブ名を明示的に参照しても、セッション キューブでは名前が異なるためグループ化によって参照が無効になります。 代わりに CURRENTCUBE キーワードを使用してください。

  • 明示的な既定メンバーを持つディメンションではグループ化を実行できません。

  • グループ化を実行すると、元のサーバー キューブのセッション スコープ計算メンバーが削除されます。

  • サーバー キューブのキューブ ディメンションでグループ化を実行する場合、同じディメンションに基づくすべてのキューブ ディメンションに影響します。

次の例では、Reseller Sales Amount メジャー、Reseller ディメンション、Product ディメンション、Geography ディメンション、Date ディメンションを含む、セッション スコープバージョンの Adventure Works キューブを作成する方法を示します。 このセッション キューブ内に 2 つのグループが作成されます。1 つのグループにはヨーロッパの国/地域が含まれており、1 つのグループには 北米 のグループが含まれています。 このサンプルは、ユーザーがメンバーのカスタム グループを作成するときに Microsoft Excel によって発行される CREATE SESSION CUBE ステートメントの簡略化されたバージョンです。

CREATE SESSION CUBE [Adventure Works_XL_GROUPING1]   
   FROM [Adventure Works]   
   ( MEASURE [Adventure Works].[Internet Sales Amount]  
   ,MEASURE [Adventure Works].[Reseller Sales Amount]  
   ,DIMENSION [Adventure Works].[Date].[Calendar]  
   ,DIMENSION [Adventure Works].[Date].[Calendar Year]  
   ,DIMENSION [Adventure Works].[Date].[Calendar Semester]  
   ,DIMENSION [Adventure Works].[Date].[Calendar Quarter]  
   ,DIMENSION [Adventure Works].[Date].[Month Name]  
   ,DIMENSION [Adventure Works].[Date].[Date]  
   ,DIMENSION [Adventure Works].[Geography].[Country]   
      HIDDEN AS _XL_GROUPING81  
   ,DIMENSION [Adventure Works].[Geography].[State-Province]  
   ,DIMENSION [Adventure Works].[Geography].[City]  
   ,DIMENSION [Adventure Works].[Geography].[Postal Code]  
   ,DIMENSION [Adventure Works].[Geography].[Geography]  
   ,DIMENSION [Adventure Works].[Product].[Product Categories]  
   ,DIMENSION [Adventure Works].[Product].[Category]  
   ,DIMENSION [Adventure Works].[Product].[Subcategory]  
   ,DIMENSION [Adventure Works].[Product].[Product]  
   ,DIMENSION [Adventure Works].[Product].[Product Key]  
   ,DIMENSION [Adventure Works].[Reseller].[Reseller]  
   ,DIMENSION [Adventure Works].[Reseller].[Geography Key]  
   ,DIMENSION [Geography].[Country]   
      NOT_RELATED_TO_FACTS FROM _XL_GROUPING81   
          ( LEVEL [(All)]  
         ,LEVEL [Country1] GROUPING  
         ,LEVEL [Country]  
            ,GROUP [Country1].[CountryXl_Grp_1]   
                ( MEMBER [Geography].[Country].&[Canada]  
                  ,MEMBER [Geography].[Country].&[United States] )  
            ,GROUP [Country1].[CountryXl_Grp_2]   
                ( MEMBER [Geography].[Country].&[France]  
                  ,MEMBER [Geography].[Country].&[Germany]  
                  ,MEMBER [Geography].[Country].&[United Kingdom] )   
            )   
   )  

参照

MDX データ定義ステートメント (MDX)
CREATE GLOBAL CUBE ステートメント (MDX)