select trunc(months/12) || '岁' || trunc(mod(months, 12)) || '月' ||
       trunc(sysdate - add_months(birth, trunc(months))) || '天' age
  from (select months_between(sysdate, birth) months, birth
          from (select date '2016-1-1' birth from dual));

05-11 20:41