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


Определение контекста куба в запросе (многомерные выражения)

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

В инструкции SELECT контекст куба определяется с помощью предложения FROM. В качестве контекста может выступать весь куб или его вложенный куб. Указав контекст куба при помощи предложения FROM, можно расширять или ограничивать его при помощи дополнительных функций.

ПримечаниеПримечание

Инструкции SCOPE и CALCULATE также позволяют управлять контекстом куба в скрипте многомерных выражений. Дополнительные сведения см. в разделе Основные принципы создания скриптов многомерных выражений (службы Analysis Services).

Синтаксис предложения FROM

Предложение FROM имеет следующий синтаксис.

<SELECT subcube clause> ::=
   Cube_Identifier | 
   (SELECT [
      * | 
      ( <SELECT query axis clause> [ , <SELECT query axis clause> ... ] ) ] 
   FROM <SELECT subcube clause> <SELECT slicer axis clause> )

Обратите внимание на то, что в этом синтаксисе куб или вложенный куб, над которым выполняется инструкция SELECT, описывается предложением <SELECT subcube clause>.

Простым примером использования предложения FROM является запрос, обрабатывающий весь образец куба Adventure Works. Предложение FROM будет иметь следующий вид:

FROM [Adventure Works]

Дополнительные сведения о предложении FROM в инструкции многомерных выражений SELECT см. в разделе Инструкция SELECT (многомерные выражения).

Уточнение контекста

Хотя в предложении FROM контекст задается внутри одного куба, это не запрещает одновременно работать с данными из нескольких кубов.

Для получения данных из кубов, которые не входят в заданный контекст куба, применяется функция многомерных выражений LookupCube. Кроме того, для временного сужения контекста при вычислении запроса можно использовать такие функции как Filter.

См. также

Другие ресурсы

Основные принципы запросов многомерных выражений (службы Analysis Services)