1

関数に渡された日付とWHEREフィールド (型) を比較する句に条件を持つ関数があります。DATE

場合によっては、日付フィールドがNULL. これが発生した場合、常に true を返すように比較したいと思います。

私が現在思いついたこと:

WHERE NVL(table.from_date, TO_DATE('01-JAN-1900')) <= TO_DATE(input_date)

これを達成するためのより良い方法はありますか?たとえば、isWHEREかどうかに基づいて句を作成します。である場合、節は; それ以外の場合、句は存在しません。table.from_dateNULLtable.from_dateNULLWHEREtable.from_date <= TO_DATE(input_date)WHERE

4

1 に答える 1

4

1 つのオプションは、NULLチェックを追加することORです。

WHERE (table.from_date IS NULL 
      OR table.from_date <= TO_DATE(input_date))

このように、from_date が null の場合、true と評価されます。

于 2013-06-27T00:36:57.953 に答える