У меня две таблицы: драйверы и маршруты. Таблица драйверов состоит из идентификатора драйвера, имени и фамилии, а таблица маршрутов состоит из идентификатора маршрута, идентификатора драйвера, времени начала и времени окончания. Как мне узнать, какие драйверы доступны в течение выбранного временного интервала, например между 25.05.2020 14:00:00 и 29.05.2020 23:00:00?
Я придумал этот код, но он дает мне обратное. Он показывает мне имя и фамилию водителей, которые уже были на маршруте в заданном интервале
select id, name, surname from driver left join route on driver.id=route.driver_id where 5-25-2020 < route.end_time and 5-29-2020 > route.start_time group by 1;
EDIT
driver.id | имя | фамилия
| 1 | name1 | фамилия1
| 2 | name2 | surname2
route.id | route.driver_id | start_time | end_time
| 1 | 1 | 25.05.2020 | 5-29-2020
| 2 | 2 | 5-15-2020 | 5-20-2020
| 3 | ? | 25.05.2020 | 5-29-2020
Я спрашиваю, как выбрать всех драйверов, доступных для идентификатора маршрута 3. Водитель 1 уже находится на маршруте в течение этого времени, поэтому единственным вариантом является идентификатор драйвера 2. Как получить этот драйвер с помощью запроса sql?