多次元表現(MDX)形式の文字列で指定された集合を返します。
構文
StrToSet(Set_Specification [,CONSTRAINED] )
引数
Set_Specification
集合を直接的または間接的に指定する有効な文字列式。
Remarks
StrToSet関数は文字列式で指定された集合を返します。 StrToSet関数は通常、外部関数からMDX文に集合仕様を返すため、またはMDXクエリのパラメータ化時にユーザー定義関数と組み合わせて使用されます。
CONSTRAINED フラグを使用する場合、セット仕様には限定または未修格のメンバー名、または補修済み・非修格のメンバー名を含むタプルが {}で囲まれていなければなりません。 このフラグは指定された文字列による注入攻撃のリスクを減らすために使われます。 もし条件付きまたは条件なしのメンバー名に直接解決できない文字列が提供された場合、次のエラーが表示されます:「STRTOSET関数のCONSTRAINDフラグによって課された制限が違反されました。」
CONSTRAINDフラグが使われない場合、指定された集合仕様は有効な多次元表現(MDX)式に解決され、集合を返すことができます。
集合とメンバーの違いをよりよく理解するために、「集合式の使用」および「メンバー式の使用」を参照してください。
Examples
以下の例は 、StrToSet 関数を用いて State-Province 属性階層のメンバーの集合を返します。 集合仕様は有効なMDX集合式を提供します。
SELECT StrToSet ('[Geography].[State-Province].Members')
ON 0
FROM [Adventure Works]
以下の例はCONSTRAINDフラグによるエラーを返します。 セット仕様は有効なMDX集合式を提供しますが、CONSTRAINED フラグは限定または非限定のメンバー名をセット仕様に必要とします。
SELECT StrToSet ('[Geography].[State-Province].Members', CONSTRAINED)
ON 0
FROM [Adventure Works]
以下の例は、ドイツおよびカナダのリセラー販売額指標を返しています。 指定された文字列に含まれる集合仕様には、CONSTRAINDフラグで求められる条件付きメンバー名が含まれています。
SELECT StrToSet ('{[Geography].[Geography].[Country].[Germany],[Geography].[Geography].[Country].[Canada]}', CONSTRAINED)
ON 0
FROM [Adventure Works]