This workshop is a complete video course about the DAX language. DAX is the native language of Power BI, Power Pivot for Excel, and SSAS Tabular models in Microsoft SQL Server Analysis Services. The training is aimed at users of Power BI, Power Pivot for Excel, and at Analysis Services developers that want to learn and master the DAX language.

The goal of the course is to teach all the features of DAX, providing the knowledge to write formulas for common and advanced business scenarios. The course is made of more than 15 hours of lectures, and other 15-20 hours of individual exercises. You can watch the videos at anytime and the system will keep track of your advances. Within the course you can download the material for all the exercises.


Students of the video course have access to a private discussion area where they can interact with the instructors asking questions related to the lectures and the exercises.

Curriculum

  • Presentation of Mastering DAX 2nd Edition

    • Presentation of Mastering DAX 2nd Edition
      FREE
  • Exercises, labs, slides, and demos

    • How to download and complete exercises
      FREE
    • Download demos
    • Download exercises
    • Slides of the video course
  • Introduction to DAX

    • Introduction to DAX
      FREE
    • What is DAX?
      FREE
    • DAX data types
      FREE
    • Calculated columns
      FREE
    • Measures
      FREE
    • Aggregation functions
    • Counting values
    • Conditional functions
    • Handling errors
    • Using variables
    • Mathematical functions
    • Relational functions
    • Exercises
      FREE
  • Table functions

    • Table functions
      FREE
    • Introduction to table functions
    • Filtering a table
    • Ignoring filters
    • Mixing filters
    • Distinct
    • How many values for a column
    • ALLSELECTED
    • RELATEDTABLE
    • Tables and relationships
    • Tables with one row and one column
    • Table variables
    • Exercises
      FREE
  • Evaluation contexts

    • Evaluation contexts
      FREE
    • Introduction to evaluation contexts
    • Filter context
    • Row context
    • Context errors
    • Filtering a table
    • Using RELATED in a row context
    • Ranking by price
    • Evaluation contexts and relationships
    • Filters and relationships
    • Exercises
      FREE
  • The CALCULATE function

    • The CALCULATE function
      FREE
    • CALCULATE
    • CALCULATE examples
    • CALCULATE recap
    • What is a filter context?
    • KEEPFILTERS
    • CALCULATE operators
    • Use one column only in compact syntax
    • Variables and evaluation contexts
    • Exercises
      FREE
  • Advanced evaluation contexts

    • Advanced evaluation contexts
      FREE
    • CALCULATE modifiers
    • USERELATIONSHIP
    • CROSSFILTER
    • ALL
    • ALLSELECTED
    • KEEPFILTERS
      FREE
    • Context transition
    • Context transition /2
    • Circular dependency
    • CALCULATE execution order
    • Exercises
      FREE
  • Iterators

    • Iterators
      FREE
    • Working with iterators
    • MINX and MAXX
    • Useful iterators
    • RANKX
    • ISINSCOPE
    • Exercises
      FREE
  • Building a date table

    • Building a date table
      FREE
    • Introduction to date table
    • Auto Date/Time
    • CALENDARAUTO
    • Mark as date table
    • Using multiple dates
  • Time intelligence in DAX

    • Time intelligence in DAX
      FREE
    • What is time intelligence?
      FREE
    • Time intelligence functions
      FREE
    • DATEADD
    • DATESINPERIOD
    • Running total
    • Mixing time intelligence functions
    • Semi-additive measures
    • Calculations over weeks
    • Exercises
      FREE
  • Hierarchies in DAX

    • Hierarchies in DAX
      FREE
    • What are hierarchies?
    • FILTER and CROSSFILTER
    • Percentages over hierarchies
    • Parent-child hierarchies
  • Querying with DAX

    • Querying with DAX
      FREE
    • Working with tables and queries
    • EVALUATE
    • CALCULATETABLE
    • SELECTCOLUMNS
    • SUMMARIZE
    • SUMMARIZECOLUMNS
    • CROSSJOIN
    • TOPN and GENERATE
    • ROW and DATATABLE
    • Tables and relationships
    • UNION, INTERSECT, and EXCEPT
    • GROUPBY
    • Query measures
    • Exercises
      FREE
  • Data lineage and TREATAS

    • Data lineage and TREATAS
      FREE
    • What is data lineage?
    • TREATAS
  • Expanded tables

    • Expanded tables
      FREE
    • Filters are tables
    • Difference between base tables and expanded tables
    • Filtering a column
    • Exercises
      FREE
  • Arbitrarily shaped filters

    • Arbitrarily shaped filters
      FREE
    • What are arbitrarily shaped filters?
    • Example of an arbitrarily shaped filter
  • ALLSELECTED and shadow filter contexts

    • ALLSELECTED and shadow filter contexts
      FREE
    • ALLSELECTED
    • Shadow filter contexts
  • Segmentation

    • Segmentation
      FREE
    • Static segmentation
    • Circular dependency in calculated tables
    • Dynamic segmentation
    • Exercises
      FREE
  • Many-to-many relationships

    • Many-to-many relationships
      FREE
    • How to handle many-to-many relationships
    • Bidirectional filtering
    • Expanded table filtering
    • Comparison of the different techniques
    • Exercises
      FREE
  • Ambiguity and bidirectional filters

    • Ambiguity and bidirectional filters
      FREE
    • Understanding ambiguity
      FREE
  • Relationships at different granularities

    • Relationships at different granularities
      FREE
    • Working at different granularity
    • Using TREATAS
    • Calculated tables to slice dimensions
    • Leveraging weak relationships
    • Scenario recap
    • Checking granularity in the report
    • Hiding or reallocating
  • Additional exercises

    • Exercises
      FREE
Student Rating
4.9
117 ratings
89%
10%
0%
1%
0%
2-star Reviews (1 of 73)
  • Larry Casey (Oct 31, 2017)

    Not enough real world examples. None of the examples will ever be used in the real world so it is very difficult to learn something when it is not taught correctly. My suggestion, don't give us some stupid unrealistic examples to work with, give us real examples that relate to real business needs. Not once do you provide examples of using dates to filter multiple tables or how to create relationships that calculate balances etc.... Everything is just a real water downed single table.

    • The examples included in the course are intentionally focused on explaining how the DAX language works. For this reason, they isolate specific issues that can help to understand each behavior of the language and of specific functions. If you want to get more real-world examples, we suggest you to take a look at www.daxpatterns.com where you can find a number of templates (completely free) that can be applied to real world issues. On that site, the focus is to apply the language to the business, so you will not find there an explanation of how the language work, which is probably needed when you have to adapt a pattern to your specific scenario. Thanks for your feedback, it will help us in clarifying the goals of the course in our marketing content.
      Reply by SQLBI (Nov 3, 2017)

Do you prefer a course in classroom?

This video course is based on a live, classroom course we teach all around the world. If you prefer a live learning experience, take a look at the dates below for a list of our upcoming events!
2019
 Amsterdam, NL Dec 10-12, 2019
Amsterdam
2020
 Houston, TX, US Feb 5-7, 2020
Houston
 San Diego, CA, US Feb 11-13, 2020
San Diego
 Amsterdam, NL Feb 18-20, 2020
Amsterdam
 San Francisco, CA, US Mar 11-13, 2020
San Francisco
 Charlotte, NC, US Mar 24-26, 2020
Charlotte
 Munich (München), DE Mar 31-Apr 2, 2020
Munich
 Amsterdam, NL May 12-14, 2020
Amsterdam
 Calgary, AB, CA May 13-15, 2020
Calgary
 Chicago, IL, US May 19-21, 2020
Chicago
 Oslo, NO Sep 1-3, 2020
Oslo