Show TOC

MDX as Basis for the InterfacesLocate this document in the navigation structure

Definition

MDX (multi-dimensional expressions) is a language developed by Microsoft for queries using multi-dimensional data. An MDX expression returns a multi-dimensional result set (dataset) that consists of axis data and cell data.

The syntax of multi-dimensional expressions is defined in the Microsoft specification OLE DB for OLAP.

Structure

The following table gives an overview of the most important components of MDX statements:

MDX Component Significance

FROM

Cube selection

SELECT

ON COLUMNS ON ROWS

Axes definition

Definition of column axes Definition of rows axes

WHERE

Filter conditions definition

Example

The following example of a MDX request contains the above elements:

SELECT  { [Measures].[CKF_SI_PROFIT],     [Measures].[0D_DOCUMENT],     [Measures].[0D_OORVALSC]   } ON COLUMNS,   NON EMPTY     [0D_PLANT].MEMBERS   ON ROWSFROM [0D_SD_C03/SAP_DEMO_OLEDB] WHERE   ( [0CALMONTH].[200101],     [0D_COUNTRY].[US] )

The following graphic shows this example and the result:

Examples for basic modules

Entity Example

Member (characteristic value)

[City].[Las Vegas], [Time].[Year].[2003]

Tuple (several characteristic values, various characteristics)

([City].[Las Vegas],[Time].[Year].[2003],[Event].[SAP TechEd 2003])

Set (several tuples or member)

{([City].[Los Angeles],[Time].[Year].[2002]),([City].[Las Vegas],[Time].[Year].[2003]),}

Value (number, characters)

5, "red"

Examples for expressions that generate the entities named above

Expression Example

Member as result

<member>.PARENT

Set as result

TOPCOUNT(<set>,<index>,<numeric_value_expression>)

Number as result

MAX(<set>[, <numeric_value_expression>])