Data Analysis Expressions and MDX

The Data Analysis Expressions (DAX) language is a new formula language that you can use in PowerPivot workbooks. DAX is not a subset of MDX, but a new formula language that is considered an extension of the formula language in Excel. The DAX statements operate against an in-memory relational data store, comprised of tables and relationships in the PowerPivot workbook. You use DAX to create custom measures and calculated columns.

This section explains how DAX is embedded in XMLA messages, and provides links to technical reference topics for the DAX functions and operators.

Note

DAX expressions cannot be used where an MDX expression is required and vice versa.

Interaction of MDX and DAX

DAX formulas can only be used in Excel workbooks that contain PowerPivot data. You create DAX formulas within a PowerPivot workbook by typing a formula in a calculated column or in a measure. 

You can view the DAX expressions that are sent to the in-memory storage engine if you monitor the interactions between the PowerPivot client and the local Analysis Services instance. To do this, you can create a trace on the workbook and view the trace by using SQL Server Profiler. For information about how to create a trace on a PowerPivot workbook, see the PowerPivot for Excel help documentation.

DAX Syntax

The syntax of DAX formulas is very similar to that of Excel formulas, and uses a combination of functions, operators, and values.

For information about the syntax of individual functions, see the DAX Online Function Reference.

Restrictions

  • DAX expressions cannot be used to create new rows, only to create new values in columns or measures based on existing data.

  • DAX is not a query language; it is an expression language that is embedded within the MDX statements that are passed to an in-process instance of Analysis Services.

  • Use of DAX expressions is supported only within PowerPivot for Excel. You cannot use measures created by a DAX expression in an instance of Analysis Services that supports traditional OLAP.