Partilhar via


Usando expressões de cubo e subcubo

Você usa expressões de cubo e subcubo em instruções MDX (Multidimensional Expressions) para definir, manipular ou recuperar dados de um cubo ou subcubo.

Expressões do cubo

Uma expressão de cubo contém um identificador de cubo ou a palavra-chave CURRENTCUBE e, portanto, só pode ser expressões simples. Muitas instruções MDX usam a palavra-chave CURRENTCUBE para identificar o contexto do cubo atual em vez de exigir um identificador de cubo.

Um identificador de cubo aparece como Cube_Name nas descrições de notação BNF de instruções MDX.

As expressões do cubo podem aparecer em vários lugares. Em uma instrução MDX SELECT, eles especificam o cubo do qual os dados devem ser recuperados. Na consulta de exemplo a seguir, a expressão [Adventure Works] refere-se ao cubo desse nome:

SELECT [Measures].[Internet Sales Amount] ON COLUMNS

FROM [Adventure Works]

Na instrução CREATE MEMBER, a expressão de cubo especifica em qual cubo o membro calculado que você está criando deve aparecer. No exemplo a seguir, a instrução cria uma medida calculada na dimensão Medidas do cubo Adventure Works:

CREATE MEMBER [Adventure Works].[Measures].[Test] AS 1

Quando você usa a instrução CREATE MEMBER dentro de um script MDX, o nome do cubo pode ser substituído pela palavra-chave CURRENTCUBE, uma vez que o cubo onde o membro calculado deve ser criado deve ser o mesmo cubo ao qual o script MDX pertence, conforme mostrado no exemplo a seguir:

CREATE MEMBER CURRENTCUBE.[Measures].[Test] AS 1;

Isso facilita copiar e colar definições de membros calculados de um cubo para outro, já que o nome do cubo não é mais codificado.

Expressões do SubCube

Uma expressão de subcubo pode conter um identificador de subcubo ou uma instrução MDX que retorna um subcubo. Se a expressão de subcubo contiver um identificador de subcubo, será uma expressão simples. Se ele contém uma instrução MDX que retorna um subcubo, é uma instrução complexa. A instrução MDX SELECT, por exemplo, retorna um subcubo e pode ser usada onde expressões de subcubo são permitidas, conforme mostrado no exemplo a seguir:

SELECT [Measures].MEMBERS ON COLUMNS,

[Date].[Calendar Year].MEMBERS ON ROWS

FROM

(SELECT [Measures].[Internet Sales Amount] ON COLUMNS,

[Date].[Calendar Year].&[2004] ON ROWS

FROM [Adventure Works])

Esse uso de uma instrução SELECT na cláusula FROM também é conhecido como subselect.

Outro cenário comum em que expressões de subcubo são encontradas é ao fazer atribuições com escopo em um script MDX. No exemplo a seguir, a instrução SCOPE é usada para limitar uma atribuição a um subcubo que consiste em [Measures]. [Valor das vendas pela Internet]:

SCOPE([Measures].[Internet Sales Amount]);

This=1;

END SCOPE;

Um identificador de subcubo aparece como Subcube_Name. em descrições de notação BNF de instruções MDX.

Ver também

A consulta MDX básica (MDX)
Construindo subcubos em MDX (MDX)
Instrução CREATE SUBCUBE (MDX)
Expressões (MDX)
Declaração SCOPE (MDX)