How Old Am I (In Months)?
Jim_Knicely
- Select Field - Administrator
You are probably aware that Vertica has a built-in function named AGE_IN_YEARS which returns the difference in years between two dates, expressed as an integer.
Example:
My son is turning 18 this year!
dbadmin=> SELECT age_in_years('06/13/2001'); age_in_years -------------- 17 (1 row)
I was curious how many months he’s been on the planet so I figured that I could just multiply his current age by 12.
dbadmin=> SELECT age_in_years('06/13/2001') * 12 age_in_months; age_in_months --------------- 204 (1 row)
But that’s not completely accurate as it does not take into account that we are already 4 months into the current year and for any past Leap Years. Luckily there is a built-in Vertica function named AGE_IN_MONTHS that does!
dbadmin=> SELECT age_in_months('06/13/2001') actual_age_in_months; actual_age_in_months ---------------------- 214 (1 row)
Helpful Links:
https://www.vertica.com/docs/9.2.x/HTML/Content/Authoring/SQLReferenceManual/Functions/Date-Time/AGE_IN_MONTHS.htm
https://forum.vertica.com/discussion/239587/how-old-am-i
Have fun!
0