一个月的间隔时间没有在31日工作?

Mik*_*ike 5 datetime oracle10g intervals

基本上,我有一个查询负责在上个月内获取所有记录(使用特定过滤器).我使用的是Oracle的interval关键字,直到今天(2009年12月31日)都运行良好.我正在使用的代码是

select (sysdate - interval '1' month) from dual
Run Code Online (Sandbox Code Playgroud)

而我得到的错误

ORA-01839: date not valid for month specified
Run Code Online (Sandbox Code Playgroud)

如何使用interval关键字与任何日期兼容?或者如果有人有更好的方法来处理这个问题,我会全力以赴.

谢谢.

CMG*_*CMG 10

尝试

select add_months(sysdate,-1) from dual
Run Code Online (Sandbox Code Playgroud)