sql >> Databasteknik >  >> RDS >> Sqlserver

Beräkna åldern på en person i SQL

Prova detta...

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

Den jämför bara årsskillnaden och om den är större subtraherar den ett år, annars returnerar den värdet.



  1. Anropar en lagrad procedur i Oracle med IN- och OUT-parametrar

  2. Enstaka MySQL-fält med kommaseparerade värden

  3. Vad är motsatsen till GROUP_CONCAT i MySQL?

  4. Oracle Replace-funktion