Forum Discussion

Anonymous's avatar
Anonymous
Not applicable
7 years ago
Solved

Calculating age

I need to calculate age but in our DB the DOB is formatted as YYMMDD like 910801 so that is August 1 , 1991 but the year is only 2 digits in my table and data type decimal After I get my DOB field formatted and data type changed..I plan use Today() and Now() functions to subtract Thanks

  • Perhaps something like:

     

    Column = 
    VAR __left = LEFT([Column1],2)*1
    VAR __mid = MID([Column1],3,2)*1
    VAR __right = RIGHT([Column1],2)*1
    VAR __year = IF(__left<=18,2000+__left,1900+__left)
    RETURN DATE(__year,__mid,__right)

2 Replies

  • Greg_Deckler's avatar
    Greg_Deckler
    Community Champion

    Perhaps something like:

     

    Column = 
    VAR __left = LEFT([Column1],2)*1
    VAR __mid = MID([Column1],3,2)*1
    VAR __right = RIGHT([Column1],2)*1
    VAR __year = IF(__left<=18,2000+__left,1900+__left)
    RETURN DATE(__year,__mid,__right)
  • Anonymous's avatar
    Anonymous
    Not applicable

    HI Anonymous,

     

    You can also try to use below calculate column formula to calculate age:

    Age =
    DATEDIFF (
        DATE ( LEFT ( [Date], 2 ), RIGHT ( LEFT ( [Date], 4 ), 2 ), RIGHT ( [Date], 2 ) ),
        TODAY (),
        YEAR
    )
    

     

    Regards,
    Xiaoxin Sheng