Несколько дат в ключе сортировки - PullRequest
0 голосов
/ 16 апреля 2019

Я хочу построить таблицу, которая будет отслеживать аренду автомобилей.

Допустим, у нас следующая ситуация:

Автомобиль А забронирован на 2018-09-20 и будет использоваться с 2018-10-21 по 2018-10-29.

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

Система должна обрабатывать три разных типа поиска по дате:

  • Заказано: От - До
  • Используется с: с - по
  • Используется для: от - до

Обратите внимание, что нельзя одновременно выполнить оба этих поиска. Пользователь должен выбрать один тип и выполнить поиск.

Я знаю, что ключ сортировки не может выглядеть так:

BOOKED_AT_2018-09-20 # USED_FROM_2018-10-21 # USED_TO_2018-10-29.

Таким образом, мы делаем между / <=,> = и разделяем их разделителями в зависимости от тип поиска невозможен (, если что-то не изменилось ).

Пока я думаю, что могу добавить три разных записи для каждого проката автомобиля.

Наличие идентификатора автомобиля в качестве PK и последующая вставка трех разных записей ключей сортировки для каждого бронирования, это BOOKED_AT, BOOKED_FROM, BOOKED_TO.

Каждый из этих трех ключей сортировки имеет одинаковый значение атрибута BOOKING_DETAIL_ID, которое используется для получения сведений о бронировании.

Примерно так:

Something like this

Таблица будет включать в себя больше данных, но я подумал, что я должен сделать это проще ...

Кто-нибудь делал что-то подобное с тремя разными типами даты поиска? (очевидно, у кого-то есть ...)

Может ли это быть решено с помощью индексов глобального поиска или чего-то еще?

PS Попытка избежать фильтра в запросе.

...