Ключевые слова в выражениях
Существует ряд различных ключевых слов, которые можно включить в различные типы выражений. Описание см. ниже. В ключевых словах регистр не учитывается.
Параметр | Описание |
---|---|
AS |
Ключевое слово AS можно использовать для указания имени выражения в контексте пользовательского выражения. Примеры. Sum([Sales]) as [Total Sales] <[Region_Name] as [Region]> |
CROSS |
Ключевое слово CROSS может использоваться в категориальных пользовательских выражениях для указания того, что между уровнями категории следует выполнить перекрестное соединение. Это означает, что отображаются все возможные комбинации категорий, даже те, в которых в текущий момент нет данных. Пример. <[A] CROSS [B]> |
DISTINCT |
Ключевое слово DISTINCT может использоваться в агрегированных выражениях для указания того, что агрегирование следует выполнять только на основании различающихся значений. Пример. Avg(distinct [Column]) |
ELSE |
Ключевое слово ELSE используется в инструкциях case, чтобы указать действия, выполняемые, если условие не соблюдается. Инструкция case имеет две разные формы. Простая: case Arg1 when Arg2 then Arg3 else Arg4 end Выражение Arg1 вычисляется, а когда аргумент Arg1 равен Arg2, возвращается Arg3. Можно ввести несколько выражений when/then, которые будут вычислены в порядке слева направо. Поиск: case when Arg1 then Arg2 else Arg3 end Возвращается аргумент Arg2, если Arg1=true, и Arg3, если Arg1=false. Можно ввести несколько выражений when/then, которые будут вычислены в порядке слева направо. Примеры. Case when 1 < 2 then "a" when 1 < 3 then "b" else "c" end Case [Column] when 3 then "a" when 2 then "b" else "c" end |
END |
Ключевое слово END используется в инструкциях CASE, чтобы указать окончание инструкции. Примеры инструкций СASE см. в пункте о ключевом слове ELSE. |
FALSE |
FALSE — это логическая константа, которая может использоваться в логических выражениях. Пример. false |
IS |
IS — это ключевое слово, которое можно использовать для проверки того, является ли выражение пустым. Примеры. [Column] Is Not Null Avg([Column]) Is Null |
NEST |
Ключевое слово NEST может использоваться в категориальных пользовательских выражениях для указания того, что уровни категории должны быть вложенными. Это означает, что отображаются только те комбинации значений, в которых фактически есть данные. Пример. <[A] nest [B]> |
NULL |
NULL — это ключевое слово, которое можно использовать для указания пустого значения, а также в составе операторов 'Is Not Null или Is Null. Примеры. null [Column] Is Not Null |
OVER |
OVER — это ключевое слово, которое можно использовать после агрегирования для указания того, что агрегирование должно вычисляться над другим окном, отличным от окна по умолчанию. Ключевое слово OVER всегда используется вместе с функцией OVER, которая указывает, как группировать данные на основе узлов в рассматриваемой иерархии. Пример. Sum([Sales]) OVER (AllPrevious([Axis.X])) |
THEN |
Ключевое слово THEN может использоваться в двух различных контекстах. Если это часть выражения CASE, оно просто определяет, что происходит при выполнении условия. Кроме того, THEN может использоваться для вычисления выражений после агрегирования (при работе с выражениями на непрерывных осях). В контексте пост-агрегирования часть выражения после ключевого слова THEN вычисляется вдобавок к агрегированным данным и агрегированное значение указывается с помощью имени [Value]. Примеры. CASE WHEN 1 < 2 THEN "a" WHEN 1 < 3 THEN "b" ELSE "c" end Sum([Sales]) THEN Sum([Value]) OVER (AllPrevious([Axis.X])) |
TRUE |
TRUE — это логическая константа, которая может использоваться в логических выражениях. Пример. true |
WHEN |
Ключевое слово WHEN используется в инструкциях CASE, чтобы указать действия, выполняемые, если условие соблюдается. Примеры инструкций СASE см. в пункте о ключевом слове ELSE. |