ADD_MONTHS(oracle)特例

ADD_MONTHS有比较特别的地方:
  1,如果碰到日期是一个月的最后一天的时候,也返回那个月的最后一天
      例如:SELECT ADD_MONTHS(TO_DATE('20080430','YYYYMMDD'),1) FROM DUAL
              返回20080531,而不是20080530
  2,如果碰到结果日期没有对应的日,则返回那个月的最后一天
      例如:SELECT ADD_MONTHS(TO_DATE('20080130','YYYYMMDD'),1) FROM DUAL
              返回20080229

解决方案:
用switch case 来解决以上问题。
欢迎大家针对这个问题提出更多的解决方案。

你可能感兴趣的:(oracle,Date)