Power BI DAX: CALENDAR, DATE, YEAR, TODAY
DateTable =
CALENDAR ( DATE ( 2020, 1, 1 ), DATE ( 2022, 12, 31 ) )
To create a Date Table in Power BI using a DAX expression, you can use the CALENDAR or CALENDARAUTO functions.
The CALENDAR function allows you to specify a date range, while CALENDARAUTO automatically generates a date range based on the data in your model. For example, you can create a Date Table by navigating to the "Modeling" tab, selecting "New Table," and entering a DAX formula like the following:
This will generate a table with a single column of dates, which you can then extend with additional calculated columns to support your date interval filtering and grouping needs.
Scenario
Retail Sales Analysis Over a Decade Objective: The company wants to analyze sales data from the past 10 years to identify trends, seasonal patterns, and growth opportunities.
Sample Data
Date | Sales Amount |
2014-01-01 | 500 |
2015-01-01 | 600 |
2016-01-01 | 700 |
2017-01-01 | 800 |
2018-01-01 | 900 |
2019-01-01 | 1000 |
2020-01-01 | 1100 |
2021-01-01 | 1200 |
2022-01-01 | 1300 |
2023-01-01 | 1400 |
2024-01-01 | 1500 |
DAX Code to Create Date Table
DateTable =
VAR var1 =
YEAR ( TODAY () )
RETURN
CALENDAR ( DATE ( var1 - 9, 01, 01 ), DATE ( var1, 12, 31 ) )
Explanation
• DateTable: This variable creates a table with dates spanning from January 1, nine years before the current year, to December 31 of the current year.
• var1: Captures the current year using the YEAR(TODAY()) function.
• CALENDAR: Generates a continuous range of dates from the start date (DATE(var1 - 9, 01, 01)) to the end date (DATE(var1, 12, 31)).
Analysis
Using this Date Table, the company can now perform various analyses, such as:
• Year-over-Year Growth: Calculate the percentage growth in sales each year.
• Seasonal Trends: Identify peak sales periods and seasonal patterns.
• Long-term Trends: Analyze overall sales growth or decline over the decade.
• Comparative Analysis: Compare sales performance across different years to identify best and worst-performing years.
This approach helps the company gain valuable insights into its sales performance, enabling data-driven decision-making and strategic planning.