Verwenden von Cube- und Subcubeausdrücken
Sie verwenden Cube- und Subcubeausdrücke in MDX-Anweisungen (Multidimensional Expressions), um Daten aus einem Cube oder Untercube zu definieren, zu bearbeiten oder abzurufen.
Cubeausdrücke
Ein Cubeausdruck enthält entweder einen Cubebezeichner oder das CURRENTCUBE-Schlüsselwort und kann daher nur einfache Ausdrücke sein. Viele MDX-Anweisungen verwenden das CURRENTCUBE-Schlüsselwort, um den aktuellen Cubekontext zu identifizieren, anstatt einen Cubebezeichner zu benötigen.
Ein Cubebezeichner wird in BNF-Notationsbeschreibungen von MDX-Anweisungen als Cube_Name angezeigt.
Cubeausdrücke können an mehreren Stellen angezeigt werden. In einer MDX SELECT-Anweisung geben sie den Cube an, aus dem Daten abgerufen werden sollen. In der folgenden Beispielabfrage bezieht sich der Ausdruck [Adventure Works] auf den Cube dieses Namens:
SELECT [Measures].[Internet Sales Amount] ON COLUMNS
FROM [Adventure Works]
In der CREATE MEMBER-Anweisung gibt der Cubeausdruck an, für welchen Cube das berechnete Element angezeigt wird, für das Sie erstellen. Im folgenden Beispiel erstellt die Anweisung ein berechnetes Measure für die Measures-Dimension des Adventure Works-Cubes:
CREATE MEMBER [Adventure Works].[Measures].[Test] AS 1
Wenn Sie die CREATE MEMBER-Anweisung in einem MDX-Skript verwenden, kann der Name des Cubes durch das SCHLÜSSELwort CURRENTCUBE ersetzt werden, da der Cube, in dem das berechnete Element erstellt werden soll, derselbe Cube sein muss, zu dem das MDX-Skript gehört, wie im folgenden Beispiel gezeigt:
CREATE MEMBER CURRENTCUBE.[Measures].[Test] AS 1;
Dies erleichtert das Kopieren und Einfügen berechneter Memberdefinitionen aus einem Cube in einen anderen, da der Name des Cubes nicht mehr hartcodiert ist.
SubCube-Ausdrücke
Ein Untercubeausdruck kann einen Untercubebezeichner oder eine MDX-Anweisung enthalten, die einen Untercube zurückgibt. Wenn der Untercubeausdruck einen Untercubebezeichner enthält, handelt es sich um einen einfachen Ausdruck. Wenn sie eine MDX-Anweisung enthält, die einen Untercube zurückgibt, handelt es sich um eine komplexe Anweisung. Die MDX SELECT-Anweisung gibt z. B. einen Untercube zurück und kann verwendet werden, wo Subcubeausdrücke zulässig sind, wie im folgenden Beispiel gezeigt:
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])
Diese Verwendung einer SELECT-Anweisung in der FROM-Klausel wird auch als Unterauswahl bezeichnet.
Ein weiteres häufiges Szenario, in dem Subcubeausdrücke auftreten, besteht darin, bereichsbezogene Zuordnungen in einem MDX-Skript vorzunehmen. Im folgenden Beispiel wird die SCOPE-Anweisung verwendet, um eine Zuordnung auf einen Untercube zu beschränken, der aus [Measures] besteht. [Internetverkaufsbetrag]:
SCOPE([Measures].[Internet Sales Amount]);
This=1;
END SCOPE;
Ein Untercubebezeichner wird als Subcube_Nameangezeigt. in den BNF-Notationsbeschreibungen von MDX-Anweisungen.
Siehe auch
die MDX-Standardabfrage (MDX)
Erstellen von Untercubes in MDX (MDX)
CREATE SUBCUBE-Anweisung (MDX)
Ausdrücke (MDX)
SCOPE-Anweisung (MDX)