Зачем же городить такой огород ? 2 Таблицы :
1) станок_id, start_time, end_time , duration. (это статистика работы станков)
2) станок_id , название станка, доп инфо если нужно. (это таблица самих станков)
При включении записываем время старта . При выключении записываем время стопа и продолжительность - "вычитаем из стопа старт" :) .
Далее можем легко получить статистику
1) по каждому станку (выборка по ID)
2) По периоду (выборка время старта >= начало нужного периода , время стопа <= конец нужного периода ).
Комбинируя фильтр 1 и 2 получаем статистику для нужного станка за нужный период.
Какой язык используете в проекте?