Hi all,
The age variable in my dataset is reported in days, how do I can convert that to age in years?
Thanks
The best way to calculate the age is by using the YRDIF Function with the date of birth and TODAY() as arguments.
From a number of days, use FLOOR(days / 365.25).
Edit: added links to the function documentation.
The best way to calculate the age is by using the YRDIF Function with the date of birth and TODAY() as arguments.
From a number of days, use FLOOR(days / 365.25).
Edit: added links to the function documentation.
Greetings,
How do I calculate age while using a connection to teradata date of birth field.
This is what I tried so far:
PROC SQL;
.
.
..
...
select
DMA.MCID
,frfm.HCC_CD
,DMA.GNDR_NM
,floor ((intck('month',DMA.MBR_BRTH_DT,today()) - (day(today()) < day(DMA.MBR_BRTH_DT))) / 12) as age
,INCRD_YEAR_MNTH_NBR
,case when max(PRORTD_MBR_MNTH_CNT) >0 then 1 else 0 END AS PRORTD_MBR_MNTH_CNT
ERROR: Teradata prepare: Syntax error: expected something between '(' and the string 'month'.
If this is part of an explicit pass-through (we can't tell, as you did not post the complete code), you must use Teradata syntax.
Thank you. I used teradata syntax.
Here is what I used:
('2022' - extract(year from teradata birth date column name)) as Age
See my answer to your other post concerning the same issue.
SAS Innovate 2025 is scheduled for May 6-9 in Orlando, FL. Sign up to be first to learn about the agenda and registration!
Learn how use the CAT functions in SAS to join values from multiple variables into a single value.
Find more tutorials on the SAS Users YouTube channel.
Ready to level-up your skills? Choose your own adventure.