私はこのSQLクエリを使用しています:
select sysdate, sysdate - INTERVAL '6' month from dual;
しかし、次のように返されます: ORA-01839: 指定された月に対して日付が無効です。
数字を9に変更すると、日付が返されるため、これは奇妙です(sysdate = 31/05/11で、減算は31/08/10です)。また、別の値を使用してみました: 1,3,6,8,11 も機能しませんが、2,4,5,7,9,12 は機能しています。
数字からすると、結果のクエリにその月の 31 日がないためだと思います。これは予想される動作ですか?MySQL では、クエリ (select now() - Interval 6 Month;) を使用して正しい値を取得できるためです。他に方法はありますか?
Oracle 11.1.0.6 を使用しています