方法:SELECT Trunc(MONTHS_BETWEEN(SYSDATE,BIRTH_DATE)/12) FROM 某表
Trunc函數在這里對帶有小數位數的數字取整數部分;
SYSDATE為oracle的獲取當前日期的函數;
BIRTH_DATE為我自己的數據庫表中存儲生日日期的字段。
實際執行SQL:
--根據出生日期計算年齡
SELECT Trunc(MONTHS_BETWEEN(
to_date(to_char(sysdate, 'yyyy-MM-dd'),'yyyy-MM-dd'),
to_date('1990-09-30', 'yyyy-MM-dd')
) / 12)
from dual;