Earn a 50% discount on the DP-600 certification exam by completing the Fabric 30 Days to Learn It challenge.
I'm trying to calculate the age of people at the time they were diagnosed with a health condition. I have 2 dates, date of birth and date of diagnosis. I've managed to do this using DATEDIFF but some of the ages being returned are wrong. For example a person born on 1/12/1968 would have been 53 when they were diagnosed on 11/01/2022, however the DATEDIFF is returning an age of 54. Is there a way that the number returned is rounded down to reflect the actual age at the time of being diagnosed? Thanks.
Solved! Go to Solution.
The reason DATEDIFF isn't working is because it counts the number of boundaries which have been crossed between the two dates, its not working to a particular number of days. A DATEDIFF between 31st Dec and 1st Jan gives 1 year, as 1 boundary has been crossed.
You could try instead using
Age =
YEAR ( 'Table'[Date of diagnosis] - 'Table'[Date of birth] ) - 1900
pls try this
That seems to have worked! Thanks very much Ahmedx.
The reason DATEDIFF isn't working is because it counts the number of boundaries which have been crossed between the two dates, its not working to a particular number of days. A DATEDIFF between 31st Dec and 1st Jan gives 1 year, as 1 boundary has been crossed.
You could try instead using
Age =
YEAR ( 'Table'[Date of diagnosis] - 'Table'[Date of birth] ) - 1900
That has worked. Thanks very much Johnt75.
User | Count |
---|---|
98 | |
91 | |
84 | |
73 | |
67 |
User | Count |
---|---|
115 | |
102 | |
98 | |
71 | |
66 |