The ultimate Fabric, Power BI, SQL, and AI community-led learning event. Save €200 with code FABCOMM.
Get registeredEnhance your career with this limited time 50% discount on Fabric and Power BI exams. Ends September 15. Request your voucher.
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 |
---|---|
65 | |
60 | |
55 | |
54 | |
31 |
User | Count |
---|---|
180 | |
88 | |
70 | |
46 | |
45 |