从oracle的当前日期计算一年到期日的最佳方法是什么? PS:需要考虑闰年。
答案 0 :(得分:5)
select (sysdate + interval '1' year ) from dual
更新(请参阅Justin Cave的评论)
select decode( to_char(sysdate, 'mmdd'),
'0229',
(sysdate-1) + interval '1' year,
(sysdate + interval '1' year ))
from dual;
答案 1 :(得分:4)
您可以执行类似此查询的操作
select add_months(to_date('08/12/2011','dd/mm/yyyy'),12) from dual;
答案 2 :(得分:4)
SELECT current_date + INTERVAL '1' YEAR FROM dual;
了解pros and cons in this thread。添加INTERVAL '1' YEAR
可能会在2月29日失败。感谢@Justin提示。
(在PostgreSQL中你不会失败,你将在2月28日获得非闰年。)