Hierarchize (MDX)

Упорядочивает членов множества в иерархии.

Syntax

  
Hierarchize(Set_Expression [ , POST ] )  

Arguments

Set_Expression
Допустимое выражение многомерных выражений (MDX), которое возвращает множество.

Remarks

Функция Hierarchize организует членов указанного множества в иерархическом порядке. Функция всегда сохраняет дубликаты.

  • Если 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]  

Следующий пример возвращает сумму Measures.[Order Quantity] элементов, агрегированную за первые девять месяцев 2003 года, содержащегося в Date измерении, из куба Adventure Works. Функция PeriodsToDate определяет кортежи в множестве, над которыми работает функция Aggregate. Функция Hierarchize организует членов указанного набора членов из размера 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])