如何从Oracle数据库中计算和选择25岁2个月以上的员工?

时间:2018-10-09 16:15:01

标签: sql oracle

我们的数据库中有各个年龄段的员工。我们只需要选择年龄在25岁2个月以上的员工即可。

3 个答案:

答案 0 :(得分:0)

这将起作用:

return this.stateColors[bugState]

答案 1 :(得分:0)

您可以使用months_between函数 https://docs.oracle.com/cd/B19306_01/server.102/b14200/functions089.htm

Oracle自己的示例:

 SELECT MONTHS_BETWEEN     (TO_DATE('02-02-1995','MM-DD-YYYY'),
     TO_DATE('01-01-1995','MM-DD-YYYY') ) "Months"
     FROM DUAL;
  

     

1.03225806

您的查询将类似于

select * from emp where MONTHS_BETWEEN (sysdate, date_of_birth) > ((25*12)+2)

答案 2 :(得分:0)

ADD_MONTHS可能有帮助,例如

select *
from employees
where date_of_birth > add_months(trunc(sysdate), -(25 * 12 + 2));
  • ADD_MONTHS将月份数添加到第一个参数
  • TRUNC(SYSDATE)返回今天的午夜;出生日期通常没有时间成分。
  • 第二个参数是:
    • -,因为我们必须减去几个月(“ 25年前”)
    • 25-25岁
    • 12-一年有12个月
    • + 2加2个月