Команда sql для получения данных диапазона дат - PullRequest
0 голосов
/ 30 апреля 2018

Я работаю над системой бронирования автомобилей и мне нужна помощь в поиске диапазонов дат в mysql

У меня есть таблица бронирования с 2 полями даты (start_date, end_date)

Когда я хочу найти автомобили, доступные в определенном диапазоне дат, у меня возникают проблемы с написанием команды sql, потому что задействованы 2 диапазона дат Один я даю, чтобы найти, какие автомобили доступны в этом диапазоне дат и второй диапазон дат в таблице бронирования (start_date, end_date)

Проблема в том, что нужно рассмотреть как минимум 4 разные вещи, потому что в данном диапазоне дат я должен показывать все машины и на каждый день, если машина доступна или нет.

Вот пример

Подумайте, я хочу узнать, какие автомобили доступны в период с 30 апреля 2018 года по 03 мая 2018 года

  • Мне нужно получить забронированные автомобили с датой start_date до 30 апреля 2018 года и датой end <<03 мая 2018 года </p>

  • Мне нужно получить забронированные автомобили с датой start_date до 30 апреля 2018 года и датой end> ​​03 мая 2018 года

  • Мне нужно получить забронированные автомобили с датой start_date после 30 апреля 2018 года и датой end_date> = 03 мая 2018 года

  • Я должен получить забронированные автомобили, у которых есть start_date и end_date между указанными датами (что является самым простым)

1 Ответ

0 голосов
/ 30 апреля 2018

Поскольку вы ожидаете получения нескольких записей в транзакции, я бы рекомендовал написать хранимую процедуру (должна присутствовать в MS sql- должна совпадать с MySql) с условием объединения за каждое утверждение.

Что позволит вам контролировать список всех запросов данных, которые будут выполнены и возвращены в виде единого набора результатов.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...