Forum Discussion

jcox's avatar
jcox
Advocate II
10 years ago

DATEDIFF when using Dates in a Column and using the TODAY() Function

So I feel like I've been close to finding a solution for a while, but I've been trying to write a measure that will take todays date from the TODAY() function, and subtract the date from a column already set up in a query in my data set and the end result I want to see is the amount of days in between. What I'm trying to find is essentially TODAY() - [Last Sales Stage Date] = Days between. I can't write it like that though so I was wondering if anyone has had any luck. Thanks!

 

-Jonathon

4 Replies

  • Eric_Zhang's avatar
    Eric_Zhang
    Microsoft Employee

    jcox wrote:

    So I feel like I've been close to finding a solution for a while, but I've been trying to write a measure that will take todays date from the TODAY() function, and subtract the date from a column already set up in a query in my data set and the end result I want to see is the amount of days in between. What I'm trying to find is essentially TODAY() - [Last Sales Stage Date] = Days between. I can't write it like that though so I was wondering if anyone has had any luck. Thanks!

     

    -Jonathon


    jcox

     

    When trying to refer a column in a measure, you have to aggregate it to get a scalar value. Something like

    Days between = DATEDIFF(TODAY(),MAX('table'[Last Sales Stage Date]),DAY)
    • jahida's avatar
      jahida
      Impactful Individual

      You can do it without another calculated column, something like: (assuming you know for sure there are no dates today)

       

      MeasureDaysBetween = SUMX(Table, DATEDIFF(Table[Last Sales Stage Date], TODAY(), DAY))

  • Greg_Deckler's avatar
    Greg_Deckler
    Community Champion

    This will work:

     

    (TODAY()-[Date].[Date])*1.

    This will avoid errors you can get with DATEDIFF depending upon starting date being larger than end date.