MDXデータ定義 - CREATE SET

現在のキューブに対してセッションスコープを持つ名前付きセットを作成します。

Syntax

  
CREATE [SESSION] [ STATIC | DYNAMIC ] [HIDDEN] SET   
   CURRENTCUBE | Cube_Name  
      .Set_Name AS 'Set_Expression'  
      [,Property_Name = Property_Value, ...n]  

引数

Cube_Name
キューブの名前を提供する有効な文字列式。

Set_Name
作成される名前の集合名を提供する有効な文字列式。

Set_Expression
集合を返す有効な多次元表現(MDX)式。

Property_Name
集合の性質の名前を提供する有効な文字列。

Property_Value
集合の性質の値を定義する有効なスカラー式。

Remarks

名前付き集合とは、再度使用するために作成する次元メンバーの集合(または集合を定義する式)のことです。 例えば、名前付き集合は、売上上位10店舗の集合からなる次元メンバーの集合を定義することを可能にします。 この集合は静的に定義することも、 TopCountのような関数によって定義できます。 この名前付きセットは、上位10店舗のセットが必要な場合に使用できます。

CREATE SET 文は、セッション中ずっと利用可能な名前付きセットを作成し、したがってセッション内の複数のクエリで使用可能です。 詳細については、「 計算メンバー Session-Scoped 作成(MDX)」をご覧ください。

また、単一のクエリで使う名前付きセットを定義することもできます。 そのような集合を定義するには、SELECT文のWITH節を使用します。 WITH節の詳細については、「 Query-Scoped Named Set(MDX)の作成」を参照してください。

Set_Expression節はMDX構文をサポートする任意の関数を含めることができます。 CREATE SET 文で作成されたものの、SESSION節を指定しないセットにはセッションスコープがあります。 WITH 節を使ってクエリスコープを持つ集合を作成します。

現在接続されているキューブ以外のキューブを指定するとエラーが発生します。 したがって、現在のキューブを表すにはキューブ名の代わりにCURRENTCUBEを使うべきです。

Scope

ユーザー定義セットは、以下の表に記載されているスコープのいずれか内で存在することができます。

クエリ範囲
セットの可視性と寿命はクエリに限定されます。 集合は個別のクエリで定義されます。 クエリのスコープはセッションのスコープを上書きします。 詳細については 、「Query-Scoped Named Sets(MDX)の作成」を参照してください。

セッション範囲
セットの可視性と寿命は、作成されたセッションに限定されます。 (セット上でDROP SET 文が発行された場合、ライフタイムはセッション持続時間より短くなります。)CREATE SET 文はセッションスコープを持つ集合を作成します。 WITH 節を使ってクエリスコープを持つ集合を作成します。

Example

以下の例は「コアプロダクト」と呼ばれる集合を作成します。 SELECTクエリは新たに作成された集合を呼び出すことを示します。 CREATE SET 文はSELECTクエリを実行する前に実行されなければならず、同じバッチ内で実行することはできません。

CREATE SET [Adventure Works].[Core Products] AS '{[Product].[Category].[Bikes]}'  
  
SELECT [Core Products] ON 0  
  FROM [Adventure Works]  

セット評価

集合評価は異なる方法で起こることを定義できます。セット作成時に一度だけ発生するように定義することも、セットが使用されるたびに発生するように定義することも可能です。

静的
CREATE SET 文が評価される時点で、集合が一度だけ評価されることを示します。

DYNAMIC
クエリで使用されるたびに集合を評価することを示します。

可視性を設定

このセットはキューブを問い合わせる他のユーザーに見えるか、見えないかのいずれかです。

隠れている
キューブをクエリするユーザーには集合が見えないことを指定します。

標準性質

各集合にはデフォルトのプロパティのセットがあります。 クライアントアプリケーションがAnalysis Servicesに接続されている場合、デフォルトプロパティは管理者の自由にサポートまたはサポート可能となります。

プロパティ識別子 意味
キャプション クライアントアプリケーションがセットのキャプションとして使用する文字列です。
DISPLAY_FOLDER クライアントアプリケーションが集合を表示するために使用する表示フォルダのパスを示す文字列です。 フォルダレベルの区切りはクライアントアプリケーションによって定義されます。 Analysis Servicesが提供するツールやクライアントでは、バックスラッシュ(\)がレベルの区切りとなります。 定義されたセットに対して複数の表示フォルダーを提供するには、セミコロン(;)でフォルダを区切ってください。