Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Лекция 12.docx
Скачиваний:
6
Добавлен:
23.09.2019
Размер:
164.34 Кб
Скачать

Числовые функции

Числовые функции чрезвычайно полезны при определении параметров запроса MDX или создании вычисляемых размерностей. Обратите внимание на тот факт, что в данной группе представлено множество статистических функций, включая функции для расчета стандартного среднеквадратичного отклонения, выборочной дисперсии и корреляции. Наиболее часто применяемыми из числовых функций являются простая функция под названием Count и ее “близкая родственница” DistinctCount.

Функция Count используется для подсчета количества элементов в таком объекте, как измерение, кортеж, набор или уровень.

Функция DistinctCount использует в качестве аргумента выражение, задающее набор кортежей, и возвращает число индивидуальных (недублирующихся) элементов в указанном наборе, а не общее число элементов.

Count(Измерение | Кортеж | Набор| Уровень)

DistinctCount(Выражение_набора)

Теперь рассмотрим следующий запрос.

WITH MEMBER Measures.CustomerCount AS DistinctCount(Exists([Customer].[Customer].MEMBERS, [Product].[Product Line].Mountain,"Internet Sales"))

SELECT Measures.CustomerCount ON COLUMNS

FROM [Adventure Works]

Функции обработки строковых значений

Чтобы извлечь имена наборов, кортежей и членов в форме строки, можно использовать специальные функции, например

MemberToStr(<Выражение_члена>).

Для выполнения обратного преобразования, т.е. преобразования строкового значения в выражение, возвращающее член измерения, можно использовать функцию

StrToMember(<Строка>).

Функции, позволяющие обрабатывать строковые значения, пригодятся вам во всех тех ситуациях, когда требуется принять некоторые введенные пользователем параметры и преобразовать их в соответствующие объекты MDX.

Однако применение функций обработки строковых значений зачастую оборачивается снижением производительности системы. Поэтому мы рекомендуем вам стараться использовать эти функции только тогда, когда это действительно необходимо. Ниже приведен пример использования функции StrToMember.

SELECT STRTOMEMBER ('[Customer].[Country].[Australia]')

ON COLUMNS

FROM [Adventure Works]