以前書いたと思ったけど見つからなかったのと新技があったので内容はダブルかもだけどメモ。
方法1
SELECT (YEAR(CURDATE())-YEAR(birth)) - (RIGHT(CURDATE(),5) < RIGHT(birth,5)) AS age
方法2
SELECT (
CASE WHEN DATE_FORMAT( NOW() ,'%m%e') >= DATE_FORMAT(birth,'%m%e')
THEN YEAR( NOW() ) - YEAR( birth )
ELSE YEAR( NOW() ) - YEAR( birth ) - 1
END) AS age