This is the video course version of the Mastering DAX workshop.
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 video course is made up of over 15 hours of lectures, plus another 15-20 hours of individual exercises. You can watch the videos at anytime and the system will keep track of your progress. 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
  • Calculation groups

    • Calculation groups
      FREE
    • Introducing calculation groups
      FREE
    • Basic measures
    • Calculation items are patterns
    • Creating calculation groups
    • Changing the format string
    • Excluding specific measures
    • Using calculation items in DAX
    • Calculation item application
    • Calculation items on complex expressions
    • Multiple calculation groups in a report
    • Understanding precedence in calculation groups
    • Reusing calculation items
    • Recursion and best practices
Student Rating
4.9
161 ratings
89%
10%
0%
1%
0%
Student Reviews (105)
  • Paul Talbot (Jun 16, 2019)

    You can't take this course, do all the exercises, and not come away with a much higher understanding of DAX. The last 'Relationships at different granularities' module is an excellent capstone to all the learning. I personally benefited from a much better understanding of TREATAS, CROSSFILTER, ALLSELECTED, and DAX Studio / querying using the SUMMARIZE-type functions. The only thing I would say is that I would probably still not recommend this material to someone who hasn't touched DAX before (e.g. to a person completely new to Power BI who has to learn DAX as well), but that doesn't reduce the overall 5-star rating for me.

  • Fernando Luís (Jun 7, 2019)

    Congratulations Alberto and Marco. This course is very well structure, very complete and effective. It help me a lot. With this course I could understand things that were not totally clear, after the read of your book “The Definitive Guide to DAX” .

  • Kenneth Barber (Jun 7, 2019)

    Mastering DAX is nearly perfect and absolutely essential to understanding DAX. I have not found this level of detail presented so clearly and concisely elsewhere. The 2nd Edition is a great improvement over an already great course. There are many examples of mistakes that you might make. Approaches to each problem are compared and contrasted. This course uses lots of guided critical thinking, which helps you understand the material, not just know it. Every Excel and Power BI developer must take this course to be able to handle large or complex data sets, otherwise you will waste lots of time coming up with poor solutions. I recommend that you watch the videos at double speed to get more ideas in your head faster and make more connections between ideas, otherwise each individual idea might come and go.

  • Matt Ballinger (Jun 5, 2019)

    Marco and Alberto have provided tremendous insight into the internal workings of the DAX language in a consumable and powerful course. After taking this course I feel fully equipped to face situations with a stronger understanding of the underlying concepts related to the DAX functions and capabilities. Thanks SQL BI!

  • youssef zaki (Jun 1, 2019)

    Perfect course. can't wait for the next ssas training ! thanks guys for your efforts

  • Roman Emelyanov (May 12, 2019)

    Thank you very much for the Course! It's Great! Labs was interesting and difficult for me. Now I need more practice after it. I think that at this moment I understand more about filter and row context, propagation, date lineage, filtering, querying, relationships. Waiting your new book "The Definitive Guide to DAX" second edition. Thank you again!

  • Donald Wiesmann (Apr 21, 2019)

    thank you very much! very detailed and helpful!

  • Andrew Mundt (Apr 8, 2019)

    Generally, I think that the course is good. It could be improved to be excellent by adding more detail in the exercises and their solutions. For example, although most tables and pivot tables are obvious to set up, some are not. So, clear descriptions of which fields to use for the rows, columns, and values would improve the courses. In addition, explanations, perhaps in the form of comments in the DAX code, describing the rationale and logic for the solutions would be good (e.g. why something had to be done a specific way).

    • Thanks for the feedback. In a few weeks we'll release a new version of this video course (and you will get automatic access, of course), which will include a brand new set of exercises. We considered all the feedbacks we received and while we are not able to satisfy all the requests, I hope that you will enjoy the new format.
      Reply by SQLBI (Apr 8, 2019)
  • Sergio Murru (Mar 24, 2019)

    This course teaches DAX by a theoretical and a practical point of view, clarifying DAX inner working aspects, when needed to understand its behaviour. The teachers' exposition is very clear and their knowledge of the subject is astounding.

  • Thijs Nijhuis (Feb 1, 2019)

    Excellent course! Great balance between theory and practise. The only thing I found hard was to compare my own solution (if different from the given anwer) to yours. I assume my solution would be less good but why? And how would it compare in terms of performance. Perhaps providing different solution would be helpful in that case.

  • Randy Howard (Jan 5, 2019)

    Excellent Course, I have been using Power BI for a few years now and wish I had taken this course from the beginning.... "Would have saved me many sleepless nights"

  • Jürg Jenny (Jan 2, 2019)

    This exceptional course provides 10 hours of high quality video tutorials. All the concepts of DAX are explained in detail and in a comprehensible and pleasant way. To sum it up: This course the way to go if you want to become a DAX master. Thank you very much for creating such great content! The only point that could be improved in my opinion: Provide more exercises. The contained labs are very good and I think working through them helps the most to really learn the DAX language. But there are so many functions introduced in the course that are not used in the labs. Having a larger set of exercises (including the solutions) would help to dive even deeper in the DAX world. Apart from that: GREAT WORK!

  • Pablo Amuchastegui (Jan 1, 2019)

    Excellent course!

  • Asier Barbarin (Dec 11, 2018)

    Excellent. It helped me a lot to understand key concepts

  • Yadhuram MC (Nov 30, 2018)

    This is Awesome. This would be like a Bible of DAX and I will refer this always

Would you prefer a classroom course?

This video course is based on a classroom course we teach all around the world. If you prefer a classroom learning experience, take a look at the dates below for a list of our upcoming classroom courses!
2020
 Munich (München), DE Sep 7-9, 2020
Munich
 Charlotte, NC, US Sep 16-18, 2020
Charlotte
 Amsterdam, NL Sep 22-24, 2020
Amsterdam
 Amsterdam, NL Sep 28-30, 2020
Amsterdam
 Chicago, IL, US Oct 14-16, 2020
Chicago
 Calgary, AB, CA Oct 19-21, 2020
Calgary
2021
 Melbourne, VIC, AU Feb 22-24, 2021
Melbourne
 Sydney, NSW, AU Mar 1-3, 2021
Sydney