数据库 根据出生日期计算年龄的sql几种数据库写法

ORACLE数据库:

FLOOR(MONTHS_BETWEEN(SYSDATE,出生日期)/12)

KINGBASE数据库:

DATEDIFF(MONTH,出生日期,CURRENT_TIMESTAMP)/12

DB2数据库:

TIMESTAMPDIFF(64,CHAR(CURRENT DATE - TIMESTAMP(出生日期)))/12

MYSQL数据库:

SELECT (YEAR(CURDATE())-YEAR('2000-01-01'))-(RIGHT(CURDATE(),5<RIGHT('2000-01-01',5)) AS age

YEAR()提取日期的年部分,RIGHT()提取日期的MM-DD (日历年)部分的最右面5个字符。比较MM-DD值的表达式部分的值一般为1或0,如果CURDATE()的年比birth的年早,则年份应减去1。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值