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

Get Fabric Certified for FREE during Fabric Data Days. Don't miss your chance! Request now

Reply
omarevp
Helper II
Helper II

Calculate time difference from two dates that come from the same column

Greetings, as common, I really need your help. I need to compare a column with itself, in order to calculate duration in hh:mm:ss.

 

Here’s what I want: I have a db with these columns: driving hours, working hours and resting hours for each driver; this db registers each activity by separate as follow, with a timestamp called FechaHora:

Captura.PNG

 

If I create in report view the following, with a table visual, I can show it this way, more or less what I need:

Captura1.PNG

 

What i did in this table was to take the same field value, twice in the same table, the first one shows the First FechaHora (*) and the second one shows the Last FechaHora (**) of the same day, with an additional Date field that shows only date in order to separate each one. Now, I wish to calculate the hours difference (Horas Diff) between the Last FechaHora from the previous date and the First FechaHora from the next day. Knowing that both dates are from the same column. Here´s what I need to do, and being able to filter it by Driver (Conductor): 

Captura2.PNG

 

I hope I explained myself, because I know it’s a little confusing. I need the difference (in hours) between the Last FechaHora from the previous date and the First FechaHora from the next day. I repeat, both dates are from the same column, called FechaHora. THANKS!

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

Hi @omarevp

Create measures

earliest = CALCULATE(MIN([datetime]),FILTER(ALLEXCEPT(Sheet4,Sheet4[category]),[date]=MAX([date])))

last = CALCULATE(MAX([datetime]),FILTER(ALLEXCEPT(Sheet4,Sheet4[category]),[date]=MAX([date])))

Measure = CALCULATE(MAX([datetime]),FILTER(ALLEXCEPT(Sheet4,Sheet4[category]),[date]=MAX([date])-1)) duration = var last2=CALCULATE(MAX([datetime]),FILTER(ALLEXCEPT(Sheet4,Sheet4[category]),[date]=MAX([date])-1))
return IF(ISBLANK(last2),BLANK(),[earliest]-last2)

[Measure] is equal to "last2" in the "duration" formula, it just let you know how it works, it is no need to create this measure in your table.

 

6.png

 

Best Regards

maggie

View solution in original post

1 REPLY 1
v-juanli-msft
Community Support
Community Support

Hi @omarevp

Create measures

earliest = CALCULATE(MIN([datetime]),FILTER(ALLEXCEPT(Sheet4,Sheet4[category]),[date]=MAX([date])))

last = CALCULATE(MAX([datetime]),FILTER(ALLEXCEPT(Sheet4,Sheet4[category]),[date]=MAX([date])))

Measure = CALCULATE(MAX([datetime]),FILTER(ALLEXCEPT(Sheet4,Sheet4[category]),[date]=MAX([date])-1)) duration = var last2=CALCULATE(MAX([datetime]),FILTER(ALLEXCEPT(Sheet4,Sheet4[category]),[date]=MAX([date])-1))
return IF(ISBLANK(last2),BLANK(),[earliest]-last2)

[Measure] is equal to "last2" in the "duration" formula, it just let you know how it works, it is no need to create this measure in your table.

 

6.png

 

Best Regards

maggie

Helpful resources

Announcements
November Power BI Update Carousel

Power BI Monthly Update - November 2025

Check out the November 2025 Power BI update to learn about new features.

Fabric Data Days Carousel

Fabric Data Days

Advance your Data & AI career with 50 days of live learning, contests, hands-on challenges, study groups & certifications and more!

FabCon Atlanta 2026 carousel

FabCon Atlanta 2026

Join us at FabCon Atlanta, March 16-20, for the ultimate Fabric, Power BI, AI and SQL community-led event. Save $200 with code FABCOMM.

Top Solution Authors