Concept Library

Power BI DAX exercises built for search, practice, and progress.

Pick a concept, read the explanation, download the starter PBIX, and submit the result after you finish the report.

Beginner

BeginnerSUM, DIVIDE, SUMX

Analyze Brexit Vote Data with Basic DAX Measures

Learn to create simple DAX measures using SUM and DIVIDE for calculating vote proportions, and SUMX for summing expressions over a table to find vote differences.

BeginnerSUM, AVERAGE, MAX, MIN, SUMX, AVERAGEX

Calculating Building Statistics with Basic DAX Measures

Learn to write fundamental DAX measures using aggregation functions like SUM, AVERAGE, MAX, MIN, and iterator functions like SUMX and AVERAGEX, to calculate various statistics.

BeginnerCALCULATE, TOTALQTD, DATESQTD, DATEADD, SUM

Calculating Quarter-to-Date (QTD) and Previous Quarter Sales

Learn to calculate Quarter-to-Date (QTD) sales and sales for the immediately preceding quarter using Power BI's time intelligence functions.

BeginnerVAR, SUM, DIVIDE

Calculating Win Ratio Using DAX Variables with Error Handling

Learn to calculate a ratio using DAX variables to improve readability and maintainability, while also implementing robust error handling for divide-by-zero scenarios.

BeginnerCALCULATE, AVERAGEX, SUMX

Context Transition with CALCULATE: Overriding Filters for Comparative Analysis

Learn to use the CALCULATE function to override existing filter contexts, enabling comparative analysis of metrics against a fixed baseline (e.g., comparing country-specific values to a national standard).

BeginnerCALCULATE, KEEPFILTERS, SUMX, CONTAINSSTRING

Controlling Filter Context with CALCULATE and KEEPFILTERS in DAX

Learn how to use CALCULATE and KEEPFILTERS to precisely control filter context within measures, ensuring calculations apply to specific data subsets while respecting or overriding existing filters.

BeginnerArithmetic Operators (+, ), DIVIDE

Creating Calculated Columns for Building Dimensions

Learn how to create calculated columns in Power BI Desktop using basic arithmetic operators and the DIVIDE function to derive new insights from existing data at the row level.

BeginnerSELECTEDVALUE, CONCATENATEX

Creating Dynamic Visual Labels and Tooltips with SELECTEDVALUE and CONCATENATEX

Learn to create dynamic and informative visual labels and tooltips in Power BI using SELECTEDVALUE for single/multiple selections and CONCATENATEX for summarized lists.

BeginnerAVERAGE, AVERAGEX, COUNTROWS

Creating Fundamental Measures for Film Data Analysis

Learn to create basic DAX aggregate measures like average and count, including the correct application of AVERAGEX when averaging expressions, to analyze film financial data.

BeginnerCALCULATE

DAX CALCULATE Function: Applying Filters to Measures

Learn to use the CALCULATE function in DAX to apply single and multiple filters to measures, including combining filter conditions with logical OR (||).

BeginnerEVALUATE, FILTER, ORDER BY

DAX Query: Identifying Brexit 'Remain' Stronghold Areas by Vote Ratio

Learn to write a DAX query using EVALUATE to filter and order data based on a calculated ratio between 'Remain' and 'Leave' votes.

BeginnerRELATED

Enhancing Chart Labels with RELATED and Concatenation in DAX

Learn to use the RELATED function in a DAX calculated column to concatenate related data from multiple tables, creating more informative chart labels.

BeginnerSUMX, FILTER, YEAR, AND (or && operator)

Filtering Data with Multiple Criteria using DAX

Learn how to use the FILTER function with multiple criteria (AND operator) to selectively sum data in Power BI, building on basic SUMX measures.

BeginnerDIVIDE, IF, ISERROR

Handle Divide-by-Zero Errors in DAX Calculated Columns

Learn how to safely divide one column by another in DAX, specifically focusing on preventing and handling divide-by-zero errors to ensure data integrity and clean reporting.

BeginnerIF, SWITCH, ISBLANK

Implementing Conditional Logic with IF and SWITCH for Calculated Columns in Power BI

Create calculated columns in Power BI with DAX conditional logic, then verify the result in report visuals.

BeginnerFILTER, AVERAGEX

Implementing the FILTER Function for Conditional Aggregations in DAX

Learn how to effectively use the `FILTER` function within an iterator like `AVERAGEX` to perform calculations on a dynamically filtered subset of a table.

BeginnerREMOVEFILTERS, CALCULATE

Mastering Filter Context Modification with REMOVEFILTERS in DAX

Learn to effectively use the REMOVEFILTERS function within CALCULATE to modify or completely clear filter context for measures, enabling robust comparative analysis and consistent visual displays in Power BI.

BeginnerCALCULATE, ALL, DIVIDE

Mastering Filter Context Removal with CALCULATE and ALL in DAX

Understand and apply the CALCULATE function to modify and remove filter contexts using ALL, thereby calculating contributions relative to different total scopes.

BeginnerVAR, CALCULATE, REMOVEFILTERS, DIVIDE, COUNTROWS

Optimizing DAX Measures with Variables for Readability and Performance

Learn to use DAX variables to break down complex formulas into logical, readable steps, improving both maintainability and understanding of measures.

BeginnerPREVIOUSMONTH, DATEADD

Time Intelligence: Comparing Porpoise Sightings with Previous Periods

Learn to use fundamental DAX time intelligence functions like PREVIOUSMONTH and DATEADD to compare current period data with previous periods, enhancing temporal analysis in Power BI.

BeginnerSELECTEDVALUE, CALCULATE, AVERAGEX

Utilizing Disconnected Slicers for Dynamic Measure Calculations

Learn how to use a disconnected slicer to dynamically influence measure calculations without directly filtering the main data model, and how to apply this to visual titles and conditional formatting.

Intermediate

IntermediateFILTER, CALCULATE, COUNTROWS

Advanced Filtering with DAX: Using FILTER for Context Modification

Understand and apply the DAX FILTER function to create virtual tables and modify filter context dynamically within measures, enabling complex aggregations based on related table conditions.

IntermediateSUMX, CALCULATE, ALL

Applying and Overriding Context Transition in Calculated Columns

Learn to create calculated columns that leverage implicit context transition for row-specific calculations and columns that override context to calculate global totals.

IntermediateCALCULATE, CONTAINSSTRING, DIVIDE, ISBLANK

Applying Filters to Measures Using CALCULATE in DAX

Create robust measures using CALCULATE to apply various filters and calculate conditional aggregations, such as percentages based on venue status, show cancellations, and ticket sales.

IntermediateEARLIER, CALCULATE, VALUES

Calculate Film Comfort Breaks using EARLIER

To calculate the required number of comfort breaks for each film based on its running time, by referencing a non-joined comfort breaks table using the EARLIER function to manage row context.

IntermediateSUMMARIZE

Calculating Aggregate Film Statistics by Genre Using SUMMARIZE

Learn how to use the SUMMARIZE function to group data and calculate aggregate measures such as average film length and total Oscars won per genre.

IntermediateFILTER, EARLIER, VAR

Calculating Cumulative Totals Over Dates Using FILTER and EARLIER

Understand and apply the FILTER and EARLIER functions to create a cumulative total over a date column in Power BI, and explore an alternative approach using variables.

IntermediateCALCULATE, TOTALYTD, DATESYTD, PARALLELPERIOD, DIVIDE

Calculating Cumulative Year-to-Date Purchases, Previous Month's Purchases, and Their Ratio using Date Intelligence Functions

Learn to apply DAX date intelligence functions like TOTALYTD, DATESYTD, and PARALLELPERIOD in conjunction with CALCULATE to perform time-based calculations and derive insightful ratios.

IntermediateALLEXCEPT, CALCULATE, DIVIDE

Calculating Percentage of Year Total Using ALLEXCEPT in Power BI DAX

Learn how to use the ALLEXCEPT function in DAX to dynamically remove all filters from a table except for specified columns, enabling calculations like percentage of year total within a filtered context.

IntermediateCALCULATE, ALL, DIVIDE, SUM

Calculating Ratios with CALCULATE and ALL in Premier League Data

Learn to calculate different types of ratios and proportions by dynamically modifying filter contexts using the CALCULATE and ALL DAX functions, applying these concepts to Premier League results data.

IntermediateCOUNTROWS, RELATEDTABLE

Calculating Related Row Counts with COUNTROWS and RELATEDTABLE

Learn to use COUNTROWS in conjunction with RELATEDTABLE to count rows in related tables and then perform calculations based on these counts, creating new calculated columns for insightful data analysis.

IntermediateSWITCH

Categorize Program Viewing Figures into Bands Using SWITCH

Learn to use the DAX SWITCH function with TRUE() to categorize numerical data into predefined bands within a calculated column, enhancing data analysis and reporting.

IntermediateCALCULATE, VALUES, FILTER

Conditional Data Omission in Matrix Visuals using CALCULATE, VALUES, and FILTER

Learn to create DAX measures that conditionally omit specific data categories (like environments) from calculations in a matrix visual, leveraging the CALCULATE, VALUES, and FILTER functions to manipulate filter context.

IntermediateIF, SWITCH, ISBLANK, AND, OR

Conditional Logic in Calculated Columns: IF, SWITCH, ISBLANK, AND

Learn to apply conditional DAX functions such as IF, SWITCH, ISBLANK, AND, and OR to create descriptive calculated columns, enhancing data categorization and reporting in Power BI.

IntermediateDate Table Setup & Configuration

Configuring a Custom Date Table in Power BI Desktop

Learn to import, configure, and integrate a custom date table in Power BI Desktop to ensure proper time intelligence functionality and flexible date analysis.

IntermediateCOUNTROWS, SUM, DIVIDE, basic arithmetic operators (+, *, )

Create Basic DAX Measures for Music Tour Statistics

Learn to create fundamental DAX measures using COUNTROWS and SUM, and apply basic arithmetic operations to calculate key statistics from different tables.

IntermediateCalculated Columns, DIVIDE

Creating Calculated Columns in Power BI with DAX

Learn to create various calculated columns in Power BI using DAX to derive new analytical insights from existing data, including handling potential errors with DIVIDE.

IntermediateVALUES, CONCATENATEX, SELECTEDVALUE, RELATED, SUMMARIZE

Creating Dynamic Labels and Tooltips with DAX Measures

Learn to create dynamic labels for card visuals and detailed tooltips for charts using various DAX functions to enhance report interactivity and user experience.

IntermediateVAR, CALCULATE, SUM, DIVIDE

DAX Exercise: Calculate Sales Ratio for Multi-Legged Animals using Variables and CALCULATE

Create a DAX measure using variables and CALCULATE to determine the ratio of sales for the current filter context to the sales of 4-legged and 6-legged animals combined within that same context, handling potential division by zero.

IntermediateDIVIDE, AVERAGE

DAX Exercise: Calculating Average Film Profit Margin with Error Handling

Learn to calculate an average profit margin using DAX, handle potential division by zero errors gracefully, and display multiple related measures effectively in Power BI.

IntermediateISFILTERED, VALUES, CONCATENATEX

Dynamic Report Title with Slicer Selections using ISFILTERED, VALUES, and CONCATENATEX

Learn to create a dynamic measure for a report title that automatically updates based on user selections in a slicer, handling single, multiple, or no selections.

IntermediateVALUES, HASONEVALUE, CONCATENATEX, ISFILTERED

Dynamically Displaying Product Names Based on Filter Context Using VALUES and Conditional Logic

Learn to create a DAX measure that dynamically displays product names in a table, showing a single product, a list of multiple products, or a specific message for aggregated totals, leveraging the VALUES function.

IntermediateFILTER, SUMX, COUNTROWS, CONTAINSSTRING, RELATED

Filtering Tables with the DAX FILTER Function for Dynamic Calculations

Understand and apply the DAX FILTER function to create filtered tables for other functions, enabling dynamic calculations based on specific conditions.

IntermediateHASONEVALUE, VALUES, DIVIDE, IF, BLANK

Implementing Dynamic Unit Scaling for Financial Measures with Slicers

Learn to create dynamic measures that adjust their output based on a single selection in a slicer, using `HASONEVALUE` and `VALUES` to retrieve the selected unit's divisor. Also, create a conditional title based on slicer selection.

IntermediateTOTALYTD

Implementing Time Intelligence with Custom Fiscal Calendars in Power BI

Learn to create year-to-date time intelligence measures in DAX, correctly configuring them to respect a custom fiscal year ending on March 31st.

IntermediateRELATED

Leveraging RELATED for Cross-Table Calculated Columns in DAX

Understand and apply the DAX RELATED function to create calculated columns that retrieve values from related tables, including handling blank values.

IntermediateUSERELATIONSHIP, CALCULATE, COUNTROWS

Leveraging USERELATIONSHIP for Multiple Inactive Date Relationships

To learn how to use the USERELATIONSHIP function to activate inactive relationships in DAX, allowing for flexible date-based calculations on a single date dimension.

IntermediateCALCULATE

Mastering CALCULATE: Applying Filters to DAX Expressions

Understand and apply the CALCULATE function to modify filter context within DAX measures, enabling calculations based on specific filter conditions.

IntermediateREMOVEFILTERS, CALCULATE

Mastering Filter Context with REMOVEFILTERS in DAX

Understand and apply the REMOVEFILTERS function within CALCULATE to manipulate filter context, enabling calculations that ignore specific filters or all filters.

IntermediateALLSELECTED, CALCULATE, DIVIDE

Mastering Filter Context: Using ALLSELECTED for Dynamic Percentages

Understand and apply the ALLSELECTED function to calculate percentages within a visual, ignoring internal visual filters but respecting external slicers.

IntermediateKEEPFILTERS, CALCULATE

Mastering KEEPFILTERS with CALCULATE for Dynamic Context Modification

Understand and apply the KEEPFILTERS function within CALCULATE to precisely control filter context for inclusion and exclusion scenarios, and to define conditional logic in Power BI visuals.

IntermediateTOTALMTD, IF, CALCULATE, SAMEPERIODLASTYEAR, DATEADD, ISINSCOPE

Mastering Power BI Time Intelligence: Automatic Date Tables and DAX Functions

Learn to leverage Power BI's automatic date tables to create robust time intelligence measures using DAX functions like TOTALMTD, SAMEPERIODLASTYEAR, DATEADD, and ISINSCOPE for calculating running totals and period-over-period comparisons.

IntermediateData Modeling for Date Comparison

Modeling Multiple Date Perspectives: Comparing Expense Incurred vs. Paid Dates

Learn to model a Power BI dataset with multiple date tables to analyze different date contexts (e.g., expense incurred date vs. paid date) simultaneously within the same report.

IntermediateCALCULATE, CONTAINSSTRING, AVERAGEX, DIVIDE

Modifying Filter Context with DAX CALCULATE in Power BI

Understand and apply the DAX CALCULATE function to modify or replace existing filter contexts within Power BI visuals, using various filter conditions including logical operators and string functions.

IntermediateVAR, RETURN, DIVIDE, SUM, CALCULATE, ISBLANK

Optimizing DAX Formulas with Variables: Calculating Corrected Unsold Ticket Percentage

Learn to use DAX variables to break down complex calculations into logical, readable steps, specifically for calculating a corrected percentage of unsold tickets per artist.

IntermediateRELATED, ISBLANK

Retrieving Related Data with DAX's RELATED Function

Learn how to use the RELATED DAX function to retrieve values from a related table into a calculated column, and effectively handle cases where no related value is found using ISBLANK.

IntermediateCROSSFILTER

Utilizing CROSSFILTER in DAX to Manage Power BI Relationship Direction

Learn how to dynamically modify the filter direction of relationships within a Power BI data model using the CROSSFILTER function to enable advanced filtering and aggregation scenarios.

Advanced

AdvancedCALCULATE, DATEADD, DATESYTD, SAMEPERIODLASTYEAR, DATESINPERIOD, DIVIDE, SUM, AVERAGEX, SUMMARIZE, ADDCOLUMNS

Mastering Advanced Time Intelligence Measures in DAX

Create three complex DAX time intelligence measures: a quarter-over-quarter percentage, a year-to-date percentage against the previous full year, and a three-month moving average of monthly totals.

AdvancedRANKX

Ranking Great British Bake Off Viewing Figures with RANKX

Learn to create an advanced DAX measure using the RANKX function to dynamically rank distinct categories based on an aggregated measure, correctly handling context transition for accurate results.