階層化(MDX)

將集合的成員排列成階層。

Syntax

  
Hierarchize(Set_Expression [ , POST ] )  

論點

Set_Expression
一個有效的多維表達式(MDX)表達式,能回傳一個集合。

備註

階層化函式將指定集合的成員組織成階層式順序。 函式總是保留重複的。

  • 若未指定 POST ,函式會依成員自然順序排序。 當沒有其他排序條件時,成員的自然順序是階層中的預設排序。 兒童成員會緊接著父母成員。

  • 若指定 POST,Hierarchize 函式會以後自然順序排序成員。 換句話說,子女成員會先於父母。

範例

以下範例針對加拿大成員進行深入探討。 Hierarchize 函式用於將指定的集合成員依階層順序組織,這是 DrillUpMember 函式所要求的。

SELECT DrillUpMember   
   (  
      Hierarchize  
         (  
            {[Geography].[Geography].[Country].[Canada]  
            ,[Geography].[Geography].[Country].[United States]  
            ,[Geography].[Geography].[State-Province].[Alberta]  
            ,[Geography].[Geography].[State-Province].[Brunswick]  
            ,[Geography].[Geography].[State-Province].[Colorado]   
            }  
         ), {[Geography].[Geography].[Country].[United States]}  
   )  
ON 0  
FROM [Adventure Works]  

以下範例回傳了 Adventure Works 立方體中 2003 年前九個月成員的總和Measures.[Order Quantity],該維度包含於該Date維度中。 PeriodsToDate 函式定義了彙總函數所作用的集合中的元組。 階層化函數會將產品維度中指定成員集合的成員按階層順序組織。

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])