ユーザーから開始日と終了日を取得できる2つのテキストボックスがあります。ここには3つの条件があります。
- ユーザーは 2 つのテキスト ボックスに入力できます
- ユーザーは開始日のみを入力できます (終了日は空です)。
- ユーザーは終了日のみを入力できます (開始日は空です)。
そして最後に、私のクエリは何ですか?
変数:start_date
とend_date
クエリ:SELECT * FROM kkmail WHERE MAIL_DATE ....
SELECT * FROM kkmail
WHERE (MAIL_DATE >= @start_date OR @start_date is null)
and (MAIL_DATE <= @end_date OR @end_date is null)
Oracle には、これらのタイプのクエリを簡潔に記述するためのLNNVL関数がありますが、少し混乱します。
SELECT *
FROM kkmail
WHERE lnnvl(mail_date < @start_date)
AND lnnvl(mail_date > @end_date);