在oracle中,获取日期是使用sysdate,他会直接返回当前时间
SELECT sysdate FROM dual
可以直接在sysdate上进行+ -操作来获取几天之前或者几天之后的时间,支持小数操作
SELECT sysdate+0.5 FROM dual
SELECT sysdate-500.5 FROM dual
现在求出每个员工的雇佣天数
SELECT ENAME,trunc(sysdate-HIREDATE) 雇佣天数 FROM EMP -----trunc()为取整函数
~可以求出本月的最后一天
LAST_DAY(日期):求出指定日期所属月的最后一天;
求当前时间所在月的最后一天
select last_day(sysdate) FROM dual
~求指定日期下个周的星期X
NEXT_DAY(日期,'星期X');
求下个周三的时间
select next_day(sysdate,'星期三') FROM dual
~求出指定日期X个月后的日期 ADD_MONTH(日期,X)
求四个月以后的时间 SELECT ADD_MONTHS(SYSDATE,4) FROM dual;
~求出指定日期与指定时间之间的月数
MONTHS_BETWEEN(X,Y) 求到现在为止员工的受雇月数
select ename,trunc(months_between(sysdate,HIREDATE)) 雇佣月数 FROM EMP