DAX language was created specifically for the handling of data models, through the use of formulas and expressions. DAX is used in several Microsoft Products such as Microsoft Power BI, Microsoft Analysis Services and Microsoft Power Pivot for Excel. These products all share the same internal engine, called Tabular/Vertipaq (xVelocity before). With DAX we have the ability to include business logic in calculations in order to enrich our business intelligence models.
The objective of the course content is to acquire advanced knowledge about DAX in order to develop using good practices.
- In the course the main concepts and the most used functions are reviewed.
- The different techniques and tools to debug and optimize DAX code are also shown.
- Labs use a variety of close-to-real life problems to provide a broad lab experience using DAX language
About the trainer
Rafael Báguena works as Data Platform Engineer at SolidQ. He obtained his Computer Engineering degree at University CEU Cardenal Herrera in 2010. For most of his career, he has focused on working as a BI developer alongside Microsoft technologies. He is experienced at health system, sales and acquisitions (ERP), insurance, transports, and customer loyalty. Rafael is passionate about everything BI related and enjoys applying his discoveries at the projects he is currently working on.
Target Audience and Prerequisites
This course is intended for the novice as well as experienced business and data analysts who have prior experience using DAX and are looking deeper knowledge about the language and how to test, and improve the performance the model.
Before attending this course, it is recommended that students have the following skills:
- Desire to learn more about DAX
- Prior exposure to the DAX calculations is recommended.
- Understanding of dimensional modelling is recommended.
- Knowledge about any functional programming language is recommended, but not necessary
Upon completion of this course, the student will be able to:
- Understand the key functions in DAX
- Understand the different elements that can be created with DAX
- Understand the different context involve in DAX
- Perform a variety of query’s using DAX
- Debug DAX
- Optimize DAX
MODULE 01 – Introduction to DAX
- What is DAX?
- What can you create with DAX?
- Calculated columns
- Calculated tables
- Data Types
- DAX and Relationships
MODULE 2 – DAX Functions Overview
- DAX functions overview
- IF and SWITCH
- Date functions
- Text functions
- Math functions
- Aggregation functions
- Table functions
- Filter and row context
- Relationships in filter and row contexts
- ISINSCOPE, ISFILTERED, ISCROSSFILTERED
- What-If and parameters
MODULE 3 – Contexts and Advanced DAX
- CALCULATE and CALCULATETABLE
- More about Filter and Row Contexts
- Nested context and variables
- ALL, ALLSELECTED (column level filter vs table level filter)
- USERELATIONSHIP and virtual relationships (TREATAS)
- Time Intelligence
- Context transitions
MODULE 4 - Internals and Optimization
- Debugging DAX Code
- DAX Studio
- Capturing queries
- Execution plans and times
- VertiPaq Analyzer
- Query optimization