我有一份员工信息表,其中一个字段是雇用的。
我如何首先检索最年轻和最资深员工之间的月份,
然后取这个数字并将其四舍五入到最接近的整数(并将此字段命名为“Old Vs. Young”?
由于
答案 0 :(得分:1)
Oracle有函数months_between()
来计算月份的差异,而round()
来自 - 你猜对了,它是圆的。下面的解决方案还告诉您如何" name"一栏(如何给它一个"别名" - 此操作的技术术语)。
使用标准SCOTT模式中的EMP表作为示例:
select min(hiredate) as min_date, max(hiredate) as max_hiredate,
round( months_between( max(hiredate), min(hiredate) ) ) as diff_months
from emp
;
MIN_HIREDATE MAX_HIREDATE DIFF_MONTHS
------------ ------------ ---------------
1980-12-17 1987-05-23 77