Here is one method to implement this:
IF (coalesce(p_START_DATE_1, p_end_date_2, sysdate) <= coalesce(p_END_DATE_2, p_START_DATE_1, sysdate) AND
coalesce(p_END_DATE_1, p_START_DATE_2, sysdate) >= coalesce(p_START_DATE_2, p_END_DATE_1, sysdate) THEN
The idea is to replace the NULL
values with values that will satisfy each condition. If both are NULL
, then use sysdate
.