Oracle根据生日计算年龄,格式为xx岁xx月xx天

Oracle中可以使用TO_CHAR函数来格式化日期,也可以使用EXTRACT函数来提取日期中的年份、月份、日期信息。

下面是一个例子,假设现在的日期是2022年12月16日,想要计算出生日期为2000年1月1日的人的年龄:

SELECT TO_CHAR(EXTRACT(YEAR FROM SYSDATE) - EXTRACT(YEAR FROM TO_DATE('2000-01-01', 'YYYY-MM-DD'))|| '岁'|| EXTRACT(MONTH FROM SYSDATE) - EXTRACT(MONTH FROM TO_DATE('2000-01-01', 'YYYY-MM-DD'))|| '月'|| EXTRACT(DAY FROM SYSDATE) - EXTRACT(DAY FROM TO_DATE('2000-01-01', 'YYYY-MM-DD'))|| '天') AS age
FROM dual;

执行上面的语句后,会得到输出结果:22岁11月15天

注意:上面的例子是基于当前日期计算年龄的,如果想要计算某一个指定日期之后的年龄,则需要把系统日期替换成指定的日期。


本文来自互联网用户投稿,文章观点仅代表作者本人,不代表本站立场,不承担相关法律责任。如若转载,请注明出处。 如若内容造成侵权/违法违规/事实不符,请点击【内容举报】进行投诉反馈!

相关文章

立即
投稿

微信公众账号

微信扫一扫加关注

返回
顶部