私は現在、それが祝日であるかどうかによって(別の制約の中ではっきりと)動作が異なるプロジェクトに取り組んでいます。この目的のために、私は日付とその曜日を含むテーブルを作成しようとしています( '休日'を8週目の曜日とみなして)。Oracle:日付のSELECT CASE文で正しくフォークしないプログラム
私は私が唯一のフィールド、holidaydate
(DATE
データ型)を持つholiday
という名前から休日、のリストを調達していますテーブルを持っています。値を入れる表はという名前で、day
(DATE
データ型)とdayofweek
(CHAR(10)
データ型)の2つのフィールドがあります。
私がテストしている間、これは私が今のところ持っているロジックです。
残念ながら、現在のところ、「休暇」ではなく「水曜日」が返されます。私はWHEN sysdate IN
をWHEN to_char (sysdate, 'dd-mon-yyyy') IN
かその行に沿って変更する必要があると感じていますが、私はいくつかのバリエーションを試しましたが、これまでにはうまくいきませんでした。
提案がありますか?
+1ですが、to_char変換の代わりにTrunc(sysdate)を使用することをお勧めします。コードの目的をよりよく反映していると私は思う。 –
大きなアドバイス。あなたの提案を反映するために私の答えを編集するなら、あなたと一緒にOKでしょうか?ありがとう! –
これを編集するだけで、このサイトのアイデアの一部です。 –