oracle中怎么求年龄,oracle算年龄的函数

oracle根据出生日期算年龄

select floor(months_between(to_date(concat(extract(year from sysdate),'-10-31'),'YYYY-MM-DD'),to_date(生日的日期,'yyyy-mm-dd'))/12) from table_name

成都创新互联公司专业为企业提供荆州网站建设、荆州做网站、荆州网站设计、荆州网站制作等企业网站建设、网页设计与制作、荆州企业网站模板建站服务,10多年荆州做网站经验,不只是建网站,更提供有价值的思路和整体网络服务。

floor 向下取整

months_between 日期相差的月份数

concat字字符串连接

extract(year from sysdate) 返回当前日期的年份

Oracle 根据出生日期计算年龄

可用to_char函数将date类型转成字符类型。

如emp表中有如下数据:

如果计算生日的方法是当前日期的年份减去生日的年份,可用如下语句:

select ename,hiredate,to_char(sysdate,'yyyy')-to_char(hiredate,'yyyy') from emp;

查询结果:

Oracle PL/SQL 计算年龄

根据出生日期查询年龄用的还挺多的。

简单分析一下,加入一个孩子五岁半了,那习惯认为他还是5岁。

用Oracle提供的months_between()函数,先获取出生日期和当前日期的月数,然后除以12向下取整:

使用的时候,将时间段替换成出生日期对应的字段即可。

如果,计算年龄用的次数非常多,最好写成自定义函数。


分享文章:oracle中怎么求年龄,oracle算年龄的函数
当前地址:http://scyanting.com/article/hojcch.html