Поделиться через


Операторы (синтаксис многомерных выражений)

В многомерных выражениях операторы выполняют следующие действия:

  • Изменяют данные, постоянно или временно.
  • Выполняют поиск значений или объектов, соответствующих указанному условию.
  • Реализуют решение между значениями или выражениями.
  • Проверяют особые условия перед началом или фиксацией транзакций либо перед выполнением определенных инструкций.

Многомерные выражения поддерживают операторы, перечисленные в следующей таблице.

Для выполнения операций этого типа Используйте

Назначения значения переменной или связывания столбцов результирующего набора данных с псевдонимом.

Операторы присваивания

Сложение, вычитание, умножение, деление.

Арифметические операторы

Проверка истинности условия, такого как AND, OR, NOT и XOR.

Побитовые операторы

Сравнение значения с другим значением или выражением.

Операторы сравнения

Или постоянное, или временное объединение двух строк в одну.

Операторы сцепления

Или постоянное, или временное объединение двух выражений набора в один набор.

Операторы наборов

Выполнение операции над одним операндом.

Унарные операторы

ms144825.note(ru-ru,SQL.90).gifПримечание.
Операции в запросах может выполнять каждый, кто видит в кубе данные, используемые с оператором любого типа. Однако изменить данные невозможно без соответствующих разрешений.

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

Вычисление сложных выражений

Построить выражение можно, объединив несколько меньших выражений с помощью операторов. В таких сложных выражениях многомерное выражение вычисляет операторы в порядке, соответствующем определению очередности операторов, используемому службами Microsoft SQL Server 2005 Analysis Services (SSAS). Многомерное выражение выполняет операторы с высокой очередностью раньше, чем операторы с низкой очередностью.

Основные сведения об очередности операторов

В следующем списке показана очередность операторов, от высшей очередности к низшей. Операторы в одной строке имеют равную очередность и вычисляются слева направо, если иной порядок не задан скобками:

  • IS
  • AS
  • DISTINCT
  • :
  • ^
  • /, *
  • +, -
  • EXISTING
  • <>, >=, =, <=, >, <
  • NOT
  • AND
  • XOR
  • OR

Дополнительные сведения об операторах в многомерных выражениях см. в разделе Справочник по операторам многомерных выражений.

Определение результатов

При формировании сложного выражения путем объединения простых выражений тип данных результирующего значения определяется правилами для операторов в сочетании с правилами для очередности типов данных.

Если результатом является символ или значение Юникода, то режим сопоставления результата определяется правилами для операторов в сочетании с очередностью параметров сортировки. Дополнительные сведения о параметрах сортировки см. в разделе Работа с языками и параметрами сортировки (службы SSAS).

Существуют также правила, определяющие точность, масштаб и длину результата на основе точности, масштаба и длины простых выражений.

Преобразование типов данных

Многомерное выражение неявно преобразует объект в другой тип, если этот объект используется в выражении, требующем данные другого типа. В следующей таблице определены правила преобразования для каждого объекта.

Исходный тип Требуемый тип Преобразование

Уровень

Набор

<level>.members

Иерархия

Элемент

<hierarchy>.defaultmember

Элемент

Кортеж

(<Member>)

Кортеж

Элемент

<tuple>.item(0)

Кортеж

Скалярное значение

<tuple>.value

См. также

Справочник

Справочник по операторам многомерных выражений

Основные понятия

Синтаксические элементы в многомерных выражениях (многомерные выражения)

Справка и поддержка

Получение помощи по SQL Server 2005