ФорумРазработкаБазы данных → Связь номеров и диапазонов цен

Связь номеров и диапазонов цен

  • Sinkler

    Сообщения: 8083 Репутация: N Группа: в ухо

    Spritz 19 июля 2011 г. 10:13

    Имеем модели Отель и Тип Номера. Связаны между собой соответственно связью one-to-many.
    У Отеля есть поля-свойства, у Типа Номера есть поля-свойства, по которым осуществляется поиск.
    И все бы ничего, только у Типа Номера есть такое свойство, как Цена. Цена не одна, а различная для разных периодов года:
    16.09 - 31.05 4000 руб
    1.06 - 5.09 5000 руб
    и т.д.
    Вопрос:
    как организовать базу с этими Ценами, чтобы при этом можно было легко организовать поиск и по цене тоже?
  • phpdude

    Сообщения: 26624 Репутация: N Группа: в ухо

    Spritz 19 июля 2011 г. 10:14, спустя 1 минуту 28 секунд

    забей на эту хуйню, пошел мартини допью один, мд5 сука свалил так и не допили )
    Сапожник без сапог
  • mario

    Сообщения: 6067 Репутация: N Группа: Джедаи

    Spritz 19 июля 2011 г. 10:18, спустя 3 минуты 32 секунды

    ухахах! Та же проблема и у нас )))
    Пока мы тупо решили хранить на каждый день свою цену )))
  • Sinkler

    Сообщения: 8083 Репутация: N Группа: в ухо

    Spritz 19 июля 2011 г. 10:20, спустя 2 минуты 48 секунд


    забей на эту хуйню, пошел мартини допью один, мд5 сука свалил так и не допили )
    а я так на тебя надеялся :D
    Спустя 94 сек.

    ухахах! Та же проблема и у нас )))
    Пока мы тупо решили хранить на каждый день свою цену )))
    т.е. модель дат, связанная с типом номера? за три дня мне тоже только это в голову пришло)))
  • phpdude

    Сообщения: 26624 Репутация: N Группа: в ухо

    Spritz 19 июля 2011 г. 10:25, спустя 4 минуты 30 секунд

    мудаки вы :-)

    заводишь цену стандартную на весь год прямо в таблице номера этого + таблицу "календарь" где есть диапазон - фром ту дейтс, прайс, и румайди.

    ну и делаешь аля
    select r.*, IFNULL(p.price, r.price) from rooms left r join price_calendar p on r.roomid = r.id where $date between p.date_from and p.date_to
    Сапожник без сапог
  • mario

    Сообщения: 6067 Репутация: N Группа: Джедаи

    Spritz 19 июля 2011 г. 10:36, спустя 11 минут 1 секунду


    мудаки вы :-)

    заводишь цену стандартную на весь год прямо в таблице номера этого + таблицу "календарь" где есть диапазон - фром ту дейтс, прайс, и румайди.

    ну и делаешь аля
    select r.*, IFNULL(p.price, r.price) from rooms left r join price_calendar p on r.roomid = r.id where $date between p.date_from and p.date_to

    а теперь прикрепи ко всему этому разные цены на размещения одного или двух человек.
  • phpdude

    Сообщения: 26624 Репутация: N Группа: в ухо

    Spritz 19 июля 2011 г. 10:39, спустя 3 минуты 17 секунд

    mario, повыябывайся у меня еще :-)

    и что сложного в этом? ну не один ко кногим, а многие ко многим.
    Сапожник без сапог
  • mario

    Сообщения: 6067 Репутация: N Группа: Джедаи

    Spritz 19 июля 2011 г. 10:44, спустя 4 минуты 41 секунду

    и что сложного в этом? ну не один ко кногим, а многие ко многим.

    нет, номер дожен быть один, т.к. к нему еще привязаны сервисы и куча всякой херни )))
    Еще например такая ситуация, назревает праздник, для части номеров делают отдельную цену, но у нас есть диапозон цен на даты… Да очевидно просто сделать еще одну таблицу, но при поиске будет дохуя вложенных запросов тогда…
    В общем я думаю логичнее хранить на каждый день свою цену.
  • kostyl

    Сообщения: 5203 Репутация: N Группа: Джедаи

    Spritz 19 июля 2011 г. 10:46, спустя 2 минуты 32 секунды

    еще заебись агрегироват данные во временную таблицу, если данные не часто изменяются и джоинить что надо по простому или и того без них…
  • Sinkler

    Сообщения: 8083 Репутация: N Группа: в ухо

    Spritz 19 июля 2011 г. 11:23, спустя 36 минут 30 секунд

    Еще например такая ситуация, назревает праздник, для части номеров делают отдельную цену, но у нас есть диапозон цен на даты…

    хм, а если для этих праздников тупо делать диапазон тоже? ну и можно ему отметку поставить какую-нибудь, что не ежегодно или чтобы в админке подсвечвало
    Спустя 257 сек.
    а теперь прикрепи ко всему этому разные цены на размещения одного или двух человек.

    ну обычно же у типа номера по стандартам конкретное количество человек.
    чтобы стоимость различалась, если вместо двух человек один заедет в люкс, я не видел.
    а св-во "дополнительное размещение 1, 2, 3 человек" можно хоть в сериализованное поле пихать, зачем оно в поиске?
    хотя, если в поиске есть поле "кол-во человек", то уже стоит задуматься…
    Спустя 196 сек.
    хотя, если в поиске есть поле "кол-во человек", то уже стоит задуматься…

    вот что с этим сделать надо придумать и я за дудов вариант)))
  • phpdude

    Сообщения: 26624 Репутация: N Группа: в ухо

    Spritz 19 июля 2011 г. 11:26, спустя 3 минуты

    мудаки вы, выдумали слона, пошел подрочу
    Сапожник без сапог
  • Sinkler

    Сообщения: 8083 Репутация: N Группа: в ухо

    Spritz 19 июля 2011 г. 11:29, спустя 3 минуты 9 секунд

    phpdude, ну ты вернешься?)
  • phpdude

    Сообщения: 26624 Репутация: N Группа: в ухо

    Spritz 19 июля 2011 г. 11:30, спустя 1 минуту 13 секунд


    phpdude, ну ты вернешься?)
    если инсульт не получу, если получу то только к пятнице вернусь, опять из больницы :-!
    Сапожник без сапог
  • Sinkler

    Сообщения: 8083 Репутация: N Группа: в ухо

    Spritz 19 июля 2011 г. 11:32, спустя 1 минуту 20 секунд

    phpdude, тогда сначала придумай, а потом дрочи :D
  • kostyl

    Сообщения: 5203 Репутация: N Группа: Джедаи

    Spritz 19 июля 2011 г. 11:37, спустя 4 минуты 56 секунд

    я уже придумал же

Пожалуйста, авторизуйтесь, чтобы написать комментарий!