Проектирование баз данных - Лучший способ показать длительность нахождения в рабочем состоянии?

Я нашел решение для своей проблемы:

unicodedata.normalize('NFKD', unicode(str(item['entity']['type']) + str(item['entity']['name']),'utf-8'))

сначала я преобразовываю свой dict в строку с помощью str (), а затем превращаю его в UTF-8 Unicode с Unicode ('str', 'utf -8 ') завершить финально после импорта unicodedata. Я использую unicodedata.normalize ()

Надеюсь, это поможет людям

6
задан andyhky 28 March 2009 в 03:46
поделиться

4 ответа

Как насчет:

create table business (
  id int not null auto_increment primary key,
  name varchar(255)
);

create table open_hour_range (
  id int not null auto_increment primary key,
  business_id int,
  day_of_week tinyint, /* 0-6 */
  open_time time,
  close_time time,
  foreign key(business_id) references business(id)
);

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

Кроме того, если Вы хотите смочь отобразить часы в формате как:

M-F Sa-Su 9-5 9-12

Необходимо было бы объединить подобные диапазоны в коде вне базы данных. Если бы Вы хотели это слияние вида, то Вы могли бы изменить day_of_week на start_day и end_day.

6
ответ дан 10 December 2019 в 02:53
поделиться

Незначительная тонкая настройка к модели Scotty Allen:

бизнес-таблица:
идентификатор - интервал
business_name - строка
таблица open_hour_range:
идентификатор - интервал
business_id - интервал//внешний ключ к бизнесу
интервал days_of_week-//(битовая маска) 1-127
open_time - время
close_time - время

3
ответ дан 10 December 2019 в 02:53
поделиться

Я использовал бы дату и время в столбцах open_time и close_time. Для встреч, которые запустятся ночью и закончатся утром на следующий день.:)

0
ответ дан 10 December 2019 в 02:53
поделиться

С базой данных Microsoft SQL Server Вы могли хранить те данные, как введено XML и все еще смочь отсортировать и искать данные на основе одного или нескольких значений в том поле. Сделайте любые вычисления в случае необходимости и т.д.

Значение в том столбце могло выглядеть подобным этому:

<businessDays>
    <monday>
        <hours from="12" to="15" />
        <hours from="16" to="21" />
    </monday>
    <friday>
        <hours from="13" to="15" />
        <hours from="16" to="18" />
        <hours from="19" to="21" />
    </friday>
</businessDays>

Ссылки на введенном XML:

Ссылки при индексации и quering данных XML в SQL Server:

В Вашем приложении Вы могли сериализировать/десериализовать эти данные в и от бизнес-объектов.

Чрезвычайно простой и эффективный.

0
ответ дан 10 December 2019 в 02:53
поделиться
Другие вопросы по тегам:

Похожие вопросы: