Использование выражений измерений
Как правило, выражения измерений и иерархий используются при передаче параметров в функции многомерных выражений для получения элементов, наборов или кортежей из иерархии.
Выражения измерений могут быть только простыми выражениями, так как являются идентификаторами объектов. Описание простых и сложных выражений см . в выражениях (многомерных выражений).
Выражения измерений
Выражение измерения содержит идентификатор измерения или функцию измерения.
Выражения измерений редко используются самостоятельно. Обычно нужно задать иерархию в измерении. Единственное исключение — измерение Measures, в котором нет иерархий.
В следующем примере показан вычисляемый элемент, в котором выражение [Measures] используется с функциями .Members и Count(), чтобы получить количество элементов в измерении Measures:
WITH MEMBER [Measures].[MeasureCount] AS
COUNT([Measures].MEMBERS)
SELECT [Measures].[MeasureCount] ON 0
FROM [Adventure Works]
Идентификатор измерения отображается как Dimension_Name в нотации BNF, используемой для описания инструкций многомерных выражений.
Выражения иерархии
Аналогично выражение иерархии содержит идентификатор иерархии или функцию иерархии. В следующем примере показано использование выражения иерархии [Дата].[Календарь] с функциями .Levels и .Count, чтобы возвратить количество уровней в иерархии «Календарь» измерения «Дата»:
WITH MEMBER [Measures].[CalendarLevelCount] AS
[Date].[Calendar].Levels.Count
SELECT [Measures].[CalendarLevelCount] ON 0
FROM [Adventure Works]
Чаще всего выражения иерархии используются вместе с функцией .Members, чтобы получить все элементы иерархии. В следующем примере возвращаются все элементы иерархии [Дата].[Календарь] по оси строк:
SELECT [Measures].[Internet Sales Amount] ON 0,
[Date].[Calendar].MEMBERS ON 1
FROM [Adventure Works]
Идентификатор иерархии отображается как Dimension_Name.Hierarchy_Name в нотации BNF, используемой для описания инструкций многомерных выражений.