Desidero calcolare l'età corrente dalla data di nascita nella mia funzione Oracle.Calcolo dell'età Oracle dalla data di nascita e oggi
Quello che sto usando è (Today-Dob)/30/12
, ma questo non è accurato poiché alcuni mesi hanno 31 giorni.
Ho bisogno di ottenere l'età corretta con la massima precisione. Come lo posso fare?
un'occhiata a questo post, penso che abbia quello che vi serve: http://stackoverflow.com/questions/43819/oracle -equivalent-to-sql-server-sybase-datediff – Jay
Solo alcuni commenti pedanti. Quando diciamo "età" è probabilmente una buona idea riflettere più attentamente su cosa significhi la parola * *. Normalmente, quando qualcuno dice "età", in realtà * significa "* quanti anniversari hanno superato *". Scientificamente, se esprimiamo l'età di due persone in anni, non possiamo confrontarli perfettamente, indipendentemente dalla precisione, perché la loro * età effettiva * sarà diversa a seconda di quando sono nati - ad es. erano nati in un anno bisestile; quanti secondi bisestili sono stati aggiunti/sottratti da allora; erano nati prima del settembre 1752? (1/2) –
(2/2) Dipende da cosa è effettivamente la domanda - cioè "quale di queste due persone ha vissuto più a lungo" dovrebbe essere risposto usando un'unità di tempo che non cambia in modo significativo (ad esempio giorni, o secondi). "Questa persona ha passato il suo diciottesimo compleanno" è una domanda diversa, che direi più vicina a ciò che la maggior parte della gente intende per "età". –