CREATE SET ステートメント (MDX)
現在のキューブのセッション スコープを使用して、名前付きセットを作成します。
構文
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
セットのプロパティの値を定義する有効なスカラ式です。
説明
名前付きセットとは、再利用のために作成するディメンション メンバのセット (またはセットを定義する式) です。たとえば、売上高上位 10 ストアのセットで構成されるディメンション メンバのセットを名前付きセットとして定義するとします。このセットは、静的に定義することも、TopCount などの関数によって定義することも可能です。そのようにして作成した名前付きセットは、上位 10 ストアのセットが必要な場所で再利用できます。
CREATE SET ステートメントで作成する名前付きセットは、セッションが終了するまで使用できます。つまり、そのセッションの複数のクエリで再利用できるということです。詳細については、「セッション スコープの計算されるメンバの作成 (MDX)」を参照してください。
1 つのクエリだけで使用する名前付きセットを定義することも可能です。そのようなセットを定義する場合は、SELECT ステートメントで WITH 句を使用します。WITH 句の詳細については、「クエリ スコープの名前付きセットの作成 (MDX)」を参照してください。
Set_Expression 句には、MDX 構文をサポートする任意の関数を含めることができます。SESSION 句を指定しない CREATE SET ステートメントで作成したセットは、セッション スコープになります。クエリ スコープによるセットを作成するには、WITH 句を使用してください。
現在接続しているキューブ以外のキューブを指定すると、エラーになります。したがって、キューブ名の代わりに CURRENTCUBE を使用して、現在のキューブを確実に指定してください。
スコープ
ユーザー定義セットには、以下のいずれかのスコープを設定できます。
クエリ スコープ
セットの表示設定と有効期間は、クエリに限定されます。そのようなセットは、個々のクエリの中で定義します。クエリ スコープは、セッション スコープよりも優先されます。詳細については、「クエリ スコープの名前付きセットの作成 (MDX)」を参照してください。セッション スコープ
セットの表示設定と有効期間は、セットが作成されたセッションに限定されます (セットに対して DROP SET ステートメントが実行された場合、有効期間はセッションよりも短くなります)。CREATE SET ステートメントで作成するセットは、セッション スコープです。クエリ スコープによるセットを作成するには、WITH 句を使用してください。
例
次の例では、Core Products というセットが作成されます。次に SELECT クエリによって、新しく作成されたセットの呼び出しを示しています。CREATE SET ステートメントは、SELECT クエリを実行する前に実行する必要があります。この 2 つのステートメントは同じバッチ内では実行できません。
CREATE SET [Adventure Works].[Core Products] AS '{[Product].[Category].[Bikes]}'
SELECT [Core Products] ON 0
FROM [Adventure Works]
セットの評価
セットの評価は異なる方法で行うことができ、セットの作成時に一度だけ行うか、セットの使用時に毎回行うかを定義できます。
STATIC
CREATE SET ステートメントが評価されるときに、セットを一度だけ評価することを示します。DYNAMIC
クエリでセットが使用されるたびに、セットを評価することを示します。
セットの表示
キューブにクエリを実行する他のユーザーに対して、セットを表示するかどうかを指定できます。
- HIDDEN
キューブにクエリを実行するユーザーに対して、セットを非表示にすることを指定します。
標準のプロパティ
セットには、それぞれ既定のプロパティのセットがあります。クライアント アプリケーションを Microsoft Analysis Services に接続すると、管理者の選択に従って、既定のプロパティがサポートされるか、またはサポートできる状態になります。
プロパティの識別子 |
意味 |
---|---|
CAPTION |
セットのキャプションとしてクライアント アプリケーションが使用する文字列です。 |
DISPLAY_FOLDER |
セットを表示するためにクライアント アプリケーションが使用する、表示フォルダのパスを識別する文字列です。フォルダ レベルの区切り記号は、クライアント アプリケーションによって定義されます。Analysis Services が提供するツールおよびクライアントでは、円記号 (\) がレベルの区切り記号です。定義されたセットで複数の表示フォルダを指定するには、セミコロン (;) を使用してフォルダを区切ります。 |