Sqlserver
 sql >> Database >  >> RDS >> Sqlserver

Calcola l'età di una persona in SQL

Prova questo...

SELECT CASE WHEN
 (DATEADD(year,DATEDIFF(year, @datestart  ,@dateend) , @datestart) > @dateend)
THEN DATEDIFF(year, @datestart  ,@dateend) -1
ELSE DATEDIFF(year, @datestart  ,@dateend)
END

Confronta semplicemente la differenza dell'anno e se è maggiore sottrae un anno, altrimenti restituisce il valore.