LINUX.ORG.RU

Как в таблице хранить свободные даты для номеров в гостинице?

 ,


0

1

Не совсем гостиница. Скорее booking или airbnb - то есть количество номеров внушительное. Нужно узнать о свободных номерах на заданный период времени (условно, с 20 марта по 25 марта). То есть отразить те гостиницы, в которых заданные дни свободны.

  1. Как должна выглядеть структура таблицы свободных и занятых дат?
  2. И как должна выглядеть структура стоимости номеров, если весь месяц может быть одна стоимость, а на праздники - другая стоимость?

Я должен создавать для каждого арендуемого объекта отдельную таблицу, где каждая запись будет соответствовать каждому дню? Просто в моём понимании, выборка может занимать длительное время. Разумеется это быстрее, чем если бы я имел таблицу «Объекты», где каждая запись - это гостиница, а в столбце, в формате json, хранил бы массив с днями - это уже совсем клиника.

Орхетехтор. Возьми чтоли любую книгу по рсубд и попробуй прочитать.

Anoxemian ★★★★★
()
create table room_booking (
    room_id integer not null,
    date date not null,
    price numeric not null,
    booking_id integer,
    primary key (room_id, date)
);
Legioner ★★★★★
()
Последнее исправление: Legioner (всего исправлений: 1)

Мой личный совет - свяжитесь с travelline (https://www.travelline.ru/)

Будут говорить, что хостинг только у них - не верьте. Это не так (Битрикс)

  • Интеграция с 1СОтель.

Там всё есть, иначе заколебётесь поддерживать потом.

mycop
()

Домашку нужно решать самому. Стыдно, гражданин.

no-such-file ★★★★★
()

1. rec_id, room_id, date_begin, date_end
2. rec_id, room_id, price, date_begin, date_end
И следить, чтобы даты не пересекались в разных записях.

Я должен создавать для каждого арендуемого объекта отдельную таблицу, где каждая запись будет соответствовать каждому дню?

Кому должен?

Разумеется это быстрее, чем если бы я имел таблицу «Объекты», где каждая запись - это гостиница, а в столбце, в формате json, хранил бы массив с днями - это уже совсем клиника.

Два интервала и всё.

Нужно узнать о свободных номерах на заданный период времени (условно, с 20 марта по 25 марта)

Условия вхождения интервала в интервал осилишь?

crutch_master ★★★★★
()
Последнее исправление: crutch_master (всего исправлений: 1)
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.