Oracle日期计算之INTERVAL


在计算月份的时候除了add_months,还可用INTERVAL:

  1. Connected to Oracle Database 11g Enterprise Edition Release 11.1.0.7.0   
  2. Connected as xxpo  
  3.    
  4. SQL>   
  5. SQL> SELECT to_char(SYSDATE,'YYYY/MM/DD HH24:MI:SS') now FROM dual;  
  6.    
  7. NOW  
  8. -------------------  
  9. 2011/05/20 06:22:00  
  10. SQL> SELECT to_char(add_months(SYSDATE,-1),'YYYY/MM/DD HH24:MI:SS'"1 month before" FROM dual;  
  11.    
  12. 1 month before  
  13. -------------------  
  14. 2011/04/20 06:22:02  
  15. SQL> SELECT to_char(SYSDATE + INTERVAL '-1' MONTH,'YYYY/MM/DD HH24:MI:SS'"1 month before" FROM dual;  
  16.    
  17. 1 month before  
  18. -------------------  
  19. 2011/04/20 06:22:04  
  20. SQL> SELECT to_char(SYSDATE + INTERVAL '1-1' YEAR TO MONTH,'YYYY/MM/DD HH24:MI:SS'"1 year and 1 month later" FROM dual;  
  21.    
  22. 1 year and 1 month later  
  23. ------------------------  
  24. 2012/06/20 06:22:06  
  25. SQL> SELECT to_char(SYSDATE + INTERVAL '-1-1' YEAR TO MONTH,'YYYY/MM/DD HH24:MI:SS'"1 year and 1 month before" FROM dual;  
  26.    
  27. 1 year and 1 month before  
  28. -------------------------  
  29. 2010/04/20 06:22:08  
  30.    
  31. SQL>   

相关内容