-1

私は次の表現を持っています

WHERE TO_CHAR(TO_DATE(dab.SNAPSHOT_DAY,'YYYYMMDD'),'MM') >=
      TO_CHAR(TO_DATE('{RUN_DATE_YYYYMMDD}','YYYYMMDD'),'MM') -1

'{RUN_DATE_YYYYMMDD}' returns the date of when the data was captured.

次のエラーが表示されます。

ORA-01481: 数値フォーマット・モデルが無効です

列は、データ型に関して一貫しています。 dab.SNAPSHOT_DAY{DATE} 2016-07-24 00:00:00.0

何が起こっているのかについて何かヒントはありますか?

私がやろうとしているのは、現在および過去の月から結果を取得することです。そのため、両方の日付を月 (MM) に変換してから 1 を減算します。例:

Snapshot_day = 05/JUN/2016 --> 06
RUN_DATE = 27/JUL/2016 --> 07
Comparing them: 06 >= 07 - 1 TRUE

皆さん、ありがとうございました!

4

1 に答える 1