StrToSet (MDX)
傳回多維度運算式 (MDX) 格式字串所指定的集合。
語法
StrToSet(Set_Specification [,CONSTRAINED] )
引數
Set_Specification
直接或間接指定集合的有效字串運算式。
備註
StrToSet 函 式會傳回字串運算式中指定的集合。 StrToSet 函 式通常與使用者定義的函式搭配使用,以將集合規格從外部函式傳回 MDX 語句,或在 MDX 查詢參數化時傳回。
使用 CONSTRAINED 旗標時,集合規格必須包含限定或未限定的成員名稱,或一組 Tuple,其中包含以大括弧 {} 括住的限定或未限定成員名稱。 此旗標可用來降低透過指定字串進行插入式攻擊的風險。 如果提供的字串無法直接解析為限定或未限定的成員名稱,則會出現下列錯誤:「違反 STRTOSET 函式中 CONSTRAINED 旗標所施加的限制。」
未使用 CONSTRAINED 旗標時,指定的集合規格可以解析為傳回集合的有效多維度運算式 (MDX) 運算式。
若要進一步瞭解集合和成員之間的差異,請參閱使用集合運算式和使用成員運算式。
範例
下列範例會使用 StrToSet 函式傳回 State-Province 屬性階層的成員集合。 集合規格提供有效的 MDX 集合運算式。
SELECT StrToSet ('[Geography].[State-Province].Members')
ON 0
FROM [Adventure Works]
下列範例會因為 CONSTRAINED 旗標而傳回錯誤。 雖然集合規格提供有效的 MDX 集合運算式,但 CONSTRAINED 旗標在集合規格中需要限定或未限定的成員名稱。
SELECT StrToSet ('[Geography].[State-Province].Members', CONSTRAINED)
ON 0
FROM [Adventure Works]
下列範例會傳回德國和加拿大的 Reseller Sales Amount 量值。 指定字串中提供的集合規格包含限制旗標所需的限定成員名稱。
SELECT StrToSet ('{[Geography].[Geography].[Country].[Germany],[Geography].[Geography].[Country].[Canada]}', CONSTRAINED)
ON 0
FROM [Adventure Works]