powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / MySQL [игнор отключен] [закрыт для гостей] / Нужна идея по хранение периодами времени.
8 сообщений из 8, страница 1 из 1
Нужна идея по хранение периодами времени.
    #38734862
Postolachi Serghei
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Добрый день всем.
Есть места на сайте (баннеры).
Возник такой вопрос: как лучше хранить в базе периоды когда они свободны, резевированные и когда они заняты. Лучше с точки зрения оптимизация при выборе свободных.
Есть идея в 3 колонки: 2014 10 0001222222211100022211100011201
1 - год
2 - месяц
3 - строка где каждая позиция 1 день (0 - свободный, 1-резевирован, 2-занят)
но не знаю если эта хороший вариат.

Жду Ваше мнения.
Спасибо.
...
Рейтинг: 0 / 0
Нужна идея по хранение периодами времени.
    #38734885
miksoft
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Периоды резервирования всегда состоят из календарных месяцев?
...
Рейтинг: 0 / 0
Нужна идея по хранение периодами времени.
    #38734898
Postolachi Serghei
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Можно резервировать по дням.
Например:
2014-10-01 - 2014-10-20
2014-10-25 - 2014-11-10.
В записи резерваций так и будет С - ДО. Но я хотел дабавлять эту информацию (2014 10 0001222222211100022211100011201) щтобы легче было выбирать свободных мест. На пример если пользователь ищет свободные места С 2014-10-02 - ДО 2014-10-28.
...
Рейтинг: 0 / 0
Нужна идея по хранение периодами времени.
    #38734945
Фотография Akina
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Postolachi Serghei3 - строка где каждая позиция 1 день (0 - свободный, 1-резевирован, 2-занят)
Денормализация. Плохо. Да и для описанной обработки так себе...
Чтобы выбрать оптимум, неплохо бы ещё описАть и бизнес-процессы. Ну выбрал свободный период - что дальше? Некий период прошёл - что дальше? Приходится ли выбирать занятые периоды? резервированные? зачем? что с ними могут делать?
Нельзя строить базу, оперируя только кусочком задачи.
...
Рейтинг: 0 / 0
Нужна идея по хранение периодами времени.
    #38734983
Фотография MasterZiv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Postolachi Serghei,


Дата начала периода, дата окончания периода -- и данные.

Можно сделать словарь периодов , тогда там Period(ID: date_begin, date_end)
и в данных

Data( id: period_id, ... )
...
Рейтинг: 0 / 0
Нужна идея по хранение периодами времени.
    #38735088
Postolachi Serghei
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
[quot Akina]Postolachi SergheiЧтобы выбрать оптимум, неплохо бы ещё описАть и бизнес-процессы. Ну выбрал свободный период - что дальше? Некий период прошёл - что дальше? Приходится ли выбирать занятые периоды? резервированные? зачем? что с ними могут делать?


если в нескольких словах то сайт продаёт баннеры. И клиенты могут выбирать период когда им хочется покупать эти места. Отсюда и мой вопрос - как сделать чтобы было быстрее при выборе.
...
Рейтинг: 0 / 0
Нужна идея по хранение периодами времени.
    #38735439
alex564657498765453
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
если период старт-финиш, величина квантуеться :):):)

тоесть скажем нельзя с любого времени по любое.

допустим минимум час и можно токо с ХХ:00:00 по УУ:00:00
тоесть ровно какойто один или несколько часов, или дней, или интервал в два часа, но главное
что вот либо так, либо ника.

тогда и вести учот времени в этих интервалах.

вот юниксвремя, квантуеться, минимальный интервал секунда, и представляеться ввиде
количества секунд.

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

и тогда ты не будешь работать с интервалами, только с обычными числами.

перевод времени в число, и числа в ремя(интервал час)

число --- число*60*60=всек --- юникс-время(всек) --- в любой другой формат для юзера

время --- - разделить на 3600 нацело, получаем число.

тоесть перейти на измерение времени в интервалах а не в секундах

и тогда правда для записи с 5 часов по 10 часов надо будет вставить 6 строк, для 5 часа, 6...10

думаю это быстрее быдет для выборки, чем работать с интервалами...

и легче при проверке (а то мало ли..у тебя занято с 9 по 11, а юзер подделав форму отправил запрос на с 10 до 13...трудно проверить пересечение интервалов для субд)
а так будет проще.
...
Рейтинг: 0 / 0
Нужна идея по хранение периодами времени.
    #38739304
Postolachi Serghei
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
alex564657498765453если период старт-финиш, величина квантуеться :):):)

тоесть скажем нельзя с любого времени по любое.

допустим минимум час и можно токо с ХХ:00:00 по УУ:00:00
тоесть ровно какойто один или несколько часов, или дней, или интервал в два часа, но главное
что вот либо так, либо ника.

тогда и вести учот времени в этих интервалах.

вот юниксвремя, квантуеться, минимальный интервал секунда, и представляеться ввиде
количества секунд.

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

и тогда ты не будешь работать с интервалами, только с обычными числами.

перевод времени в число, и числа в ремя(интервал час)

число --- число*60*60=всек --- юникс-время(всек) --- в любой другой формат для юзера

время --- - разделить на 3600 нацело, получаем число.

тоесть перейти на измерение времени в интервалах а не в секундах

и тогда правда для записи с 5 часов по 10 часов надо будет вставить 6 строк, для 5 часа, 6...10

думаю это быстрее быдет для выборки, чем работать с интервалами...

и легче при проверке (а то мало ли..у тебя занято с 9 по 11, а юзер подделав форму отправил запрос на с 10 до 13...трудно проверить пересечение интервалов для субд)
а так будет проще.

Спасибо.
...
Рейтинг: 0 / 0
8 сообщений из 8, страница 1 из 1
Форумы / MySQL [игнор отключен] [закрыт для гостей] / Нужна идея по хранение периодами времени.
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]