Прошу помощь в написании оптимального запроса.
Есть периодический регистр сведения о состоянии некоторой позиции справочника. К примеру с 05.09 включен, с 07.09 выключен, с 10.09 опять включен. Есть способ кроме перебора по дням узнать сколько дней в месяце он был включен.
Спасибо.
2. для каждого включения берешь разницу в днях с датой из запроса 1
для каждого выключения берешь разницу в днях с датой из запроса 1 и умножаешь на -1
суммируешь - и готово
Поместить ТаблицаВключений
из регистрСведений.ТакойТо
;
Выбрать
Период КАК ДатаВключен, Ссылка, Минимум(Рег.Период) КАК ДатаВыключен
Из ТаблицаВключений КАК таблицаВключений
Левое Соединение регистрСведений.ТакойТо КАК Рег
По ТаблицаВключений.Ссылка = рег.Ссылка
ТаблицаВключений.Период > Рег.Период
и Рег.РесурсВключенВЫключен = &Выключен