oracle 根據出生日期計算精確年齡

2021-07-09 01:39:17 字數 494 閱讀 3473

select floor(months_between(sysdate, to_date('20141217','yyyy-mm-dd'))/ 12) a,--手工輸入日期

months_between(sysdate, u.modifydate) / 12 b,--從資料庫取值計算月份

floor(months_between(sysdate, u.modifydate) / 12) c--對月份向下取整,表示年齡

from org_userinfo u;

算年齡可以精確到日。

months_between函式返回兩個日期之間的月份數。如果兩個日期月份內天數相同,或者都是某個月的最後一天,返回乙個整數,否則,返回數值帶小數,以每天1/31月來計算月中剩餘天數。

floor(x),有時候也寫做floor(x),其功能是「向下取整」,或者說「向下捨入」,即取不大於x的最大整數(與「四捨五入」不同,下取整是直接取按照數軸上最接近要求的值左邊的值,也就是不大於要求的值的最大的那個)。

根據出生日期計算距離生日時間

具體使用根據情況大家自己調整,此處僅供參考。根據出生日期計算生日天數 jxcore.birthwarm function value,fieldctl var dd eval new birth.substr 1,birth.length 2 var ar date dd.getmonth 1,dd...

SQL Server 根據出生日期計算年齡

getdate 函式用於返回當前的日期和時間 datediff 函式返回兩個日期之間的時間。語法 datediff datepart,startdate,enddate startdate 和 enddate 引數是合法的日期表示式。datepart 引數可以是下列的值 datepart縮寫年 yy...

mysql根據出生日期計算年齡

select date format from days to days now to days birthday y 0 as age方法一,作者也說出了缺陷,就是當日期為未來日期時結果為0,而不是負數 這裡使用了5個函式和兩個運算子。select date format now y date f...