Если вы ищете один отпуск, то:
select l.*
from leaves l
where l.leave_start_date <= date '2020-04-10' and
l.leave_end_date >= date '2020-04-09';
Это работает для диапазона дат, при условии, что один отпуск покрывает их.
Если у вас есть разные даты, используйте совокупность:
select l.emp_id
from leaves l
group by l.emp_id
having sum(case when date '2020-04-09' between l.leave_start_date and l.leave_end_date then 1 else 0 end) > 0 and
sum(case when date '2020-04-10' between l.leave_start_date and l.leave_end_date then 1 else 0 end) > 0 ;