Этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
Политика конфиденциальности
|
|
|
Делаю Scheduler переговорных комнат, как правильно создать базу?
|
|||
|---|---|---|---|
|
#18+
Делаю Scheduler переговорных комнат, как правильно создать базу? Надо бронировать: 1. На определенные дни недели, на одно и тоже время. 2. На все дни недели, на одно и тоже время 3. На несколько дней Как вариант создал таблицу: StartDate - DateTime EndDate - DateTime DayOfWeek - Int RoomID - Int DayOfWeek: 1-7 номер дня недели. 0 - все дни недели null - на несколько дней(промежуток) Например, если StartDate=15.04.2002 16:00:00,а ЕndDate= 31.04.2002 17:00:00 При DayOfWeek =5,это значит 5 - пятница: комната букируется с 16:00 до 17:00, по пятницам,15.04.2002, 22.04.2002, 29.04.2002 При DayOfWeek =0, это значит: комната букируется с 16:00 до 17:00, на все дни с 15.04.2002 по 31.04.2002 При DayOfWeek =Null, это значит: комната букируется с 16:00 15.04.2002 по 17:00 31.04.2002 на все время Пример данных: StartDate = 15.04.2002 16:00:00 EndDate = 31.04.2002 17:00:00 DayOfWeek = 5 RoomID = 1 StartDate = 15.04.2002 16:00:00 EndDate = 31.04.2002 17:00:00 DayOfWeek = 0 RoomID = 2 StartDate = 15.04.2002 16:00:00 EndDate = 31.04.2002 17:00:00 DayOfWeek = Null RoomID = 3 Хотелось бы сделать View, что бы получать данные в следующем виде. А потом делать выборки, задавая условия на поля tmpStartDate, tmpEndDate StartDate, EndDate, DayOfWeek, Room,IDtmpStartDate, tmpEndDate "15.04.2002 16:00:00", "31.04.2002 17:00:00", 5, 1, "15.04.2002 16:00:00", "15.04.2002 17:00:00" "15.04.2002 16:00:00", "31.04.2002 17:00:00", 5, 1, "22.04.2002 16:00:00", "22.04.2002 17:00:00" "15.04.2002 16:00:00", "31.04.2002 17:00:00", 5, 1, "29.04.2002 16:00:00", "29.04.2002 17:00:00" "15.04.2002 16:00:00", "31.04.2002 17:00:00", null, 3, "15.04.2002 16:00:00", "31.04.2002 17:00:00" "15.04.2002 16:00:00", "31.04.2002 17:00:00", 0, 2, "15.04.2002 16:00:00", "15.04.2002 17:00:00" "15.04.2002 16:00:00", "31.04.2002 17:00:00", 0, 2, "16.04.2002 16:00:00", "16.04.2002 17:00:00" "15.04.2002 16:00:00", "31.04.2002 17:00:00", 0, 2, "17.04.2002 16:00:00", "17.04.2002 17:00:00" ....т.д. "15.04.2002 16:00:00", "31.04.2002 17:00:00", 0, 2, "30.04.2002 16:00:00", "30.04.2002 17:00:00" "15.04.2002 16:00:00", "31.04.2002 17:00:00", 0, 2, "31.04.2002 16:00:00", "31.04.2002 17:00:00" Как правильно написать View? Или как правильно изменить структуру данных, что бы было удобно работать? Алексей ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.03.2002, 14:06 |
|
||
|
Делаю Scheduler переговорных комнат, как правильно создать базу?
|
|||
|---|---|---|---|
|
#18+
попробуй отказаться от даты окончания используй только дату начала далее если комната не резервируется другим то пусть считается что она зарезервирована за последним кто в ней был, или используй целое значение часов на сколько была зарезервирована так проще построить индексы ... и ещё не используй view как только данных станет много это вилы ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.03.2002, 15:30 |
|
||
|
|

start [/forum/topic.php?fid=46&msg=32025417&tid=1823524]: |
0ms |
get settings: |
7ms |
get forum list: |
9ms |
check forum access: |
2ms |
check topic access: |
2ms |
track hit: |
127ms |
get topic data: |
7ms |
get forum data: |
2ms |
get page messages: |
21ms |
get tp. blocked users: |
1ms |
| others: | 223ms |
| total: | 401ms |

| 0 / 0 |
