Новости
Столкнулся с необходимостью создания запроса с неколькими подряд LEFT JOIN.
INSERT INTO to_reserve_mcr (cid, to_reserve) SELECT distinct g.id, ROUND(SUM(pacr.volume_discontented), 5) FROM good AS g LEFT JOIN good_in_group as gig ON gig.good_id = g.id LEFT JOIN product_accounting_component_reserve as pacr ON pacr.component_id = g.id LEFT JOIN product_accounting_order as po ON pacr.order_id = po.id where FIND_IN_SET(gig.group_id, "125,132,160,233,136,252,134,313,162,312") AND (po.state <> "closed") GROUP BY g.id
Здесь product_accounting_order - таблица заказов.
По мере того, как база данных разрослась, запрос стал выполняться очень долго, вплоть до того, что апач обрывал соединение с браузером раньше, чем выполнялся запрос.
Долго пытался оптимизировать запрос, и заметил, что на самом деле, хоть число заказов растет, заказов невыполненных (state <> 'closed') все время ограниченно. Последовал совету Интернета, и открытые заказы перенес в маленький предварительный запрос
select id from product_accounting_order where state <> 'cancelled'
а результат вставляю в большой запрос:
INSERT INTO to_reserve_mcr (cid, to_reserve) SELECT distinct g.id, ROUND(SUM(pacr.volume_discontented), 5) FROM good AS g LEFT JOIN good_in_group as gig ON gig.good_id = g.id LEFT JOIN product_accounting_component_reserve as pacr ON pacr.component_id = g.id where FIND_IN_SET(pacr.order_id, "263,264,457,526,536,596,602,603") AND FIND_IN_SET(gig.group_id, "125,132,160,233,136,252,134,313,162,312") GROUP BY g.id
Время выполнения запроса сократилось в 10 раз.
В Завод365 внедрен функционал диаграммы Ганта плана производства изделия в блоке «Себестоимость изделий». Новый инструмент позволяет менеджерам по продажам ещё до создания заказа оценить реальный срок изготовления с учётом загрузки оборудования, наличия материалов и сотрудников
Читать далееПредставляем обновление в модуле «Центр управления производством» — функцию «Изготовить комплектующие с вариативными параметрами». Теперь система самостоятельно выявляет потребность в производстве нестандартных компонентов и формирует детальные рекомендации.
Читать далееДиаграмма Ганта плана производства заказа позволяет менеджерам и мастерам видеть точный прогноз завершения заказа с учётом занятости ресурсов, приоритетов, наличия материалов и фактического прогресса. Реальные сроки и «узкие места» под контролем
Читать далееВ Центре управления комплектующими появился новый инструмент — модуль формирования автоматических рекомендаций «Закупить материалы», призванный кардинально упростить и ускорить работу отдела снабжения.
Читать далееСистема сама подскажет, что и сколько запускать в производство — останется только нажать одну кнопку.
Читать далееВнедрение Конструктор365 в Дилер365 автоматизирует подбор характеристик, расчет цен и формирование сопутствующих товаров для B2B/B2C заказов, сокращая время работы менеджера с часов до секунд
Читать далее