StartDateaと aの 2 つの日付があります。CreatedDate
私が言うなら
CreatedDate < StartDate
の場合StartDateはどうなりNULLますか?
使うべきか
isnull(startdate,0)
それとも単に a を返すのNULLか、それとも常にそのままよりも小さいStartDateのStartDateかNULL?
を確認する必要がありnullます。
をチェックしないとnull、比較の結果はunknownwhich isになりfalseます。
StartDateとの両方が である場合CreatedDate、NULLSQLCOALESCE関数を使用してデフォルト値を提供できます。たとえば、十分に小さい日付と十分に大きい日付です。
SELECT ...
FROM ...
WHERE COALESCE(StartDate, DATE '0001-01-01') < COALESCE(CreatedDate, DATE '9999-12-31')
ここでは、標準の SQL の日付と時刻のリテラルを使用しています。
注: 日付と時間の制限は、データベース サーバーによって異なります。上記の例は、Oracle データベースで機能します。