DrilldownLevel (MDX)
向下切入一個集合的成員,直到集合中最低層級下面的一個層級,或者到集合中一個成員的特定層級下面的一個層級。
語法
Level expression syntax
DrilldownLevel(Set_Expression [ , Level_Expression ] )
Numeric expression syntax
DrilldownLevel(Set_Expression [ , ,Index} ] )
引數
Set_Expression
傳回集合的有效多維度運算式 (MDX) 運算式。Level_Expression
傳回層級的有效多維度運算式 (MDX) 運算式。Index
指定集合內向下鑽研階層編號的有效數值運算式。
備註
DrilldownLevel 函數會根據指定之集合中所含的成員,以階層順序傳回子成員集合。會保留指定之集合中原始成員的順序,但在函數之結果集中的所有子成員則在其父成員底下。
如果指定了層級運算式,函數只會擷取在指定之層級的成員其子系,以階層順序來建構集合。如果指定層級運算式,而且在指定之集合中沒有代表該指定層級的成員,則會傳回指定的集合。
如果指定索引值,此函數會根據以零為基底的索引,只擷取指定之集合中所參考指定之階層其最低層級再下一個層級的那些成員其子系,以階層順序來建構集合。
如果沒有指定層級運算式或索引值,此函數只會擷取指定之集合中所參考之第一個維度其最低層級再下一個層級的那些成員其子系,以階層順序來建構集合。
範例
下列範例使用 DrilldownLevel 函數搭配 Count 函數,計算 Product 維度中的產品數目。
Count(DrilldownLevel (
[Product].[Product].[Product]))
下列範例使用數值運算式語法向下鑽研至第一個階層,即 Customer Geography 階層。
SELECT DRILLDOWNLEVEL
( {[Customer].[Customer Geography].[Country].&[Canada]} * {[Customer].[Gender].[All Customers]},,0)
ON 0
FROM [Adventure Works]
下列範例使用數值運算式語法向下鑽研至第二個階層,即 Gender 階層。
SELECT DRILLDOWNLEVEL
( {[Customer].[Customer Geography].[Country].&[Canada]} * {[Customer].[Gender].[All Customers]},,1)
ON 0
FROM [Adventure Works]
下列範例會根據由使用者選取並經 Aggregatefunction評估的 State-Province 成員值,傳回上一個時間週期銷售值衰退的轉售商計數。Hierarchize 和 DrilldownLevel 函數用於 Product 維度以傳回產品類別的衰退銷售值。DrilldownLevel 函數是用來向下鑽研至 Product 屬性階層其最低層級再往下一層的層級 (因為沒有指定層級)。
WITH MEMBER Measures.[Declining Reseller Sales] AS
Count(
Filter(
Existing(Reseller.Reseller.Reseller),
[Measures].[Reseller Sales Amount] < ([Measures].[Reseller Sales Amount],
[Date].Calendar.PrevMember)
)
)
MEMBER [Geography].[State-Province].x AS
Aggregate (
{[Geography].[State-Province].&[WA]&[US],
[Geography].[State-Province].&[OR]&[US] }
)
SELECT NON EMPTY Hierarchize (
AddCalculatedMembers (
{DrilldownLevel ({[Product].[All Products]})}
) )
DIMENSION PROPERTIES PARENT_UNIQUE_NAME ON COLUMNS
FROM [Adventure Works]
WHERE ([Geography].[State-Province].x,
[Date].[Calendar].[Calendar Quarter].&[2003]&[4],
[Measures].[Declining Reseller Sales])