Необязательная справочная информация:
- Я - менеджер цепочки поставок (работа на складе) в процессе установки GUI для заказа товаров. Там чуть более 80 наименований, и я заказываю сотни раз в неделю. Excel / Sheets до сих пор был замечательным, поскольку я могу запрограммировать его так, чтобы он делал то, что я хочу, но я предполагаю, что моя замена не сможет использовать мою систему в долгосрочной перспективе. Я использую данные истории заказов, чтобы рассчитать среднее использование для каждого элемента за последние X заказов.
Вот мясо:
Я использую Excel чтобы отслеживать заказы, используя этот формат:
![excel layout](https://i.stack.imgur.com/btDqv.png)
Теперь мне нужна структура данных, которая будет содержать любое количество заказов, добавлять новые заказы, легко сохранять и быстро вернуть нужную мне информацию. Я думал, что использование базы данных SQL будет способом go, поэтому я настроил большинство таблиц, но мне не ясно, как настроить таблицу заказов.
Мне нужно хранить двумерные данные в таблице заказов. В Excel каждый столбец - это дата, каждая строка элемента, а их пересечение - целое число количества элементов, которые были заказаны. В базе данных я ожидал, что каждая запись строки будет представлять собой полный порядок, содержащий список целых чисел, которые соответствуют количеству каждого элемента, упорядоченного. Насколько я могу судить, списки и массивы - нет-нет для SQL. Поэтому, просмотрев различные типы данных, которые разрешены, мы пришли к двум вариантам:
Каждая строка таблицы представляет собой порядок для одного элемента , с соответствующим номером заказа, который связывает его с остальной частью заказа
![sample order table](https://i.stack.imgur.com/SHBaI.png)
- Создайте объект json, который будет выполнять работу для мне, с дополнительной нагрузкой, связанной с необходимостью создания json объекта, который будет выполнять эту работу за меня. Мне это нравится, потому что я могу просто сохранить 2D-массив, но мне также нужно сохранить все данные метки, такие как «Элемент 1», с количеством заказов. Если элемент добавлен или удален, порядок элементов в истории не будет соответствовать текущему 2D-массиву. Я также обеспокоен скоростью этого метода после размещения сотен заказов. Я никогда не использовал JSON в базе данных, так что, может быть, я неправильно понял?
Конечно, я могу заставить любого работать; но я не уверен, что нет лучшего способа. Я ищу стандартный метод с учетом лучших практик, так как я надеюсь поместить это в свое резюме, чтобы я мог когда-нибудь поработать в CS. Возможно, есть лучший метод для базы данных, или база данных совершенно неверна! Дайте мне знать, что вы думаете