Oracle数据库综合应用

Oracle数据库综合应用

查询员工的编号,姓名,雇佣日期,以及计算出每一位员工到今天为止被雇佣的年数,月数,天数。
select empno,ename,hiredate,
TRUNC(MONTHS_BETWEEN(SYSDATE,hiredate)/12) year
FROM emp;

计算年:
在这里插入图片描述
计算月:
年的计算结果包含月数,余数实际上就是除12的结果,也就是月数。利用MOD()函数可以求出余数。

select empno,ename,hiredate,
TRUNC(MONTHS_BETWEEN(SYSDATE,hiredate)/12) year,
TRUNC(MOD(MONTHS_BETWEEN(SYSDATE,hiredate),12)) months/*计算剩余月数*/
FROM emp;

在这里插入图片描述
计算天数:

公式: 日期1-日期2=数字(天数)

SELECT empno,ename,hiredate,
TRUNC(MONTHS_BETWEEN(SYSDATE,hiredate)/12) year,
TRUNC(MOD(MONTHS_BETWEEN(SYSDATE,hiredate),12)) months,
TRUNC(SYSDATE-ADD_MONTHS(hiredate,MONTHS_BETWEEN(SYSDATE,hiredate))) day
FROM emp;

在这里插入图片描述

补充: 由于ADD_MONTHS()函数指:对指定日期增加若干个月之后的日期。
加差额的月份后,年月一致,想减即为天数。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值