The Data Analysis Expressions (DAX) language provides a specialized syntax for querying Microsoft analysis services tabular models and forms an important part of the Power BI platform. DAX is NOT a programming language, it is primarily a formula language and also a query language. You can use DAX to define custom calculations for calculated column and for calculated fields (measures) in analysis services tabular models, which include PowerBI solutions.
Syntax, functions and context
DAX includes some of the functions that are used in Excel formulas, and additional functions that are designed to work with relational data and perform dynamic aggregation. It is, in part, an evolution of the MultiDimensional Expression (MDX) language developed by Microsoft for analysis services MultiDimensional models (often called cubes) combined with Excel formula functions. It is designed to be simple and easy to learn, yet to expose the power and flexibility of Microsoft tabular models.
Enhancements to the DAX language in 2016 include support for calculated tables, automatic date table generation, variables and a total of 248 functions.
DAX can compute values for seven data types:
• Date (datetime)
• TRUE/FALSE (Boolean)
• BLOB (binary large object)
DAX has a powerful type-handling system so that you do not have to worry much about data types. When you write a DAX expression, the resulting type is based on the type of the terms used in the expression and on the operator used. Type conversion occurs automatically during the expression evaluation.