Skip to main content
cancel
Showing results for 
Search instead for 
Did you mean: 

Earn a 50% discount on the DP-600 certification exam by completing the Fabric 30 Days to Learn It challenge.

Reply
Anonymous
Not applicable

DAX Calculation for Dates

Hi, I have a datasource that updates at a regular basis, 

 

is there a way to categorize them, for either "Current" or "Previous" then the rest will be NULL.

 

Current means Latest update

Previous means previous update

 

The rest will show null as we only want to show current update and previous update

 

Goal (Tableau Reference):

 

Laedays_0-1623932303509.png

 

 

Goal:

 

LAST_UPDATE_DATEDAX calc
6/15/20201 2:14:34 AMnull
6/15/20201 9:42:25 AMPrevious
6/15/20201 6:34:25 PMCurrent 

 

1 ACCEPTED SOLUTION
v-stephen-msft
Community Support
Community Support

Hi @Anonymous ,

 

You can create the following measure

Week = var _rank=RANKX(ALL('Table'),CALCULATE(MAX('Table'[Last Update Date])),,DESC,Dense)
return IF(_rank=1,"Current Week",IF(_rank=2,"Previous Week","Null"))

8.png

If you only want to keep three rows, write a metric to keep the first three rows.

Measure = var _rank=RANKX(ALL('Table'),CALCULATE(MAX('Table'[Last Update Date])),,DESC,Dense)
return IF(_rank<=3,1)

9.png

 

 

Best Regards,

Stephen Tao

 

If this post helps, then please consider Accept it as the solution to help the other members find it more quickly.

View solution in original post

3 REPLIES 3
v-stephen-msft
Community Support
Community Support

Hi @Anonymous ,

 

You can create the following measure

Week = var _rank=RANKX(ALL('Table'),CALCULATE(MAX('Table'[Last Update Date])),,DESC,Dense)
return IF(_rank=1,"Current Week",IF(_rank=2,"Previous Week","Null"))

8.png

If you only want to keep three rows, write a metric to keep the first three rows.

Measure = var _rank=RANKX(ALL('Table'),CALCULATE(MAX('Table'[Last Update Date])),,DESC,Dense)
return IF(_rank<=3,1)

9.png

 

 

Best Regards,

Stephen Tao

 

If this post helps, then please consider Accept it as the solution to help the other members find it more quickly.

Anonymous
Not applicable

I found a solution that might help you.

I changed the datatype for the date column to date and I added a custom column with an if statement:

 

IF('Table'[Date]=max('Table'[Date]),"CURRENT","OLDER")

 

 

I get the following results in a table:

 

jacobs_0-1623931442743.png

 

Hope it helps.

Anonymous
Not applicable

Hi, thanks for your suggestion.

 

However, i only want to have 1 older and 1 current, the history should be null.

 

It's gonna update weekly, this is an example

 

Laedays_0-1623932265915.png

 

Helpful resources

Announcements
RTI Forums Carousel3

New forum boards available in Real-Time Intelligence.

Ask questions in Eventhouse and KQL, Eventstream, and Reflex.

LearnSurvey

Fabric certifications survey

Certification feedback opportunity for the community.