Oracle日期时间操作

  SELECT SYSDATE,ADD_MONTHS(SYSDATE,12) FROM DUAL;--加1年

  SELECT SYSDATE,ADD_MONTHS(SYSDATE,1) FROM DUAL;--加1月

  SELECT SYSDATE,TO_CHAR(SYSDATE+7,'YYYY-MM-DD HH24:MI:SS') FROM DUAL;--加1星期

  SELECT SYSDATE,TO_CHAR(SYSDATE+1,'YYYY-MM-DD HH24:MI:SS') FROM DUAL;--加1天

  SELECT SYSDATE,TO_CHAR(SYSDATE+1/24,'YYYY-MM-DD HH24:MI:SS') FROM DUAL;--加1小时

  SELECT SYSDATE,TO_CHAR(SYSDATE+1/24/60,'YYYY-MM-DD HH24:MI:SS') FROM DUAL;--加1分钟

  SELECT SYSDATE,TO_CHAR(SYSDATE+1/24/60/60,'YYYY-MM-DD HH24:MI:SS') FROM DUAL;--加1秒


  SELECT SYSDATE,ADD_MONTHS(SYSDATE,-12) FROM DUAL;--减1年

  SELECT SYSDATE,ADD_MONTHS(SYSDATE,-1) FROM DUAL;--减1月

  SELECT SYSDATE,TO_CHAR(SYSDATE-7,'YYYY-MM-DD HH24:MI:SS') FROM DUAL;--减1星期

  SELECT SYSDATE,TO_CHAR(SYSDATE-1,'YYYY-MM-DD HH24:MI:SS') FROM DUAL;--减1天

  SELECT SYSDATE,TO_CHAR(SYSDATE-1/24,'YYYY-MM-DD HH24:MI:SS') FROM DUAL;--减1小时

  SELECT SYSDATE,TO_CHAR(SYSDATE-1/24/60,'YYYY-MM-DD HH24:MI:SS') FROM DUAL;--减1分钟

  SELECT SYSDATE,TO_CHAR(SYSDATE-1/24/60/60,'YYYY-MM-DD HH24:MI:SS') FROM DUAL;--减1秒  


  当前时间减去7分钟的时间

  SELECT SYSDATE,SYSDATE - INTERVAL '7' MINUTE FROM DUAL

  当前时间减去7小时的时间

  SELECT SYSDATE - INTERVAL '7' HOUR FROM DUAL

  当前时间减去7天的时间

  SELECT SYSDATE - INTERVAL '7' DAY FROM DUAL

  当前时间减去7月的时间

  SELECT SYSDATE,SYSDATE - INTERVAL '7' MONTH FROM DUAL

  当前时间减去7年的时间

  SELECT SYSDATE,SYSDATE - INTERVAL '7' YEAR FROM DUAL

  时间间隔乘以一个数字

  SELECT SYSDATE,SYSDATE - 8 *INTERVAL '2' HOUR FROM DUAL

  2.日期到字符操作

  SELECT SYSDATE,TO_CHAR(SYSDATE,'YYYY-MM-DD HH24:MI:SS') FROM DUAL

  SELECT SYSDATE,TO_CHAR(SYSDATE,'YYYY-MM-DD HH:MI:SS') FROM DUAL

  SELECT SYSDATE,TO_CHAR(SYSDATE,'YYYY-DDD HH:MI:SS') FROM DUAL

  SELECT SYSDATE,TO_CHAR(SYSDATE,'YYYY-MM IW-D HH:MI:SS') FROM DUAL

  3.字符到日期操作

  SELECT TO_DATE('2003-10-17 21:15:37','YYYY-MM-DD HH24:MI:SS') FROM DUAL

  4.TRUNK/ ROUND函数的使用

  SELECT TRUNC(SYSDATE ,'YEAR') FROM DUAL

  SELECT TRUNC(SYSDATE ) FROM DUAL

  SELECT TO_CHAR(TRUNC(SYSDATE ,'YYYY'),'YYYY') FROM DUAL

  5.ORACLE有毫秒级的数据类型

  --返回当前时间 年月日小时分秒毫秒

  SELECT TO_CHAR(CURRENT_TIMESTAMP(5),'DD-MON-YYYY HH24:MI:SSXFF') FROM DUAL;

  --返回当前 时间的秒毫秒,可以指定秒后面的精度(最大=9)

  SELECT TO_CHAR(CURRENT_TIMESTAMP(9),'MI:SSXFF') FROM DUAL;


你可能感兴趣的:(Oracle日期时间)