MySQL - How to make a DATEDIFF in years?
Yes, TIMESTAMPDIFF is the best approach:

select TIMESTAMPDIFF(year,'2011-01-01', now() ) ;  --&gt; 4
select TIMESTAMPDIFF(year,'2011-08-28', now() ) ;  --&gt; 4 
select TIMESTAMPDIFF(year,'2011-09-01', now() ) ;  --&gt; 3