ВЫБРАТЬ
НачТаблица.ДатаСтавки КАК Начало,
МИНИМУМ(ДОБАВИТЬКДАТЕ(НачТаблица1.ДатаСтавки, СЕКУНДА, -1)) КАК Окончание,
НачТаблица.Ставка
ИЗ
НачТаблица КАК НачТаблица
ЛЕВОЕ СОЕДИНЕНИЕ НачТаблица КАК НачТаблица1
ПО НачТаблица.ДатаСтавки < НачТаблица1.ДатаСтавки
СГРУППИРОВАТЬ ПО
НачТаблица.Ставка,
НачТаблица.ДатаСтавки
ВЫБРАТЬ
НачТаблица.ДатаСтавки КАК Начало,
МИНИМУМ(ДОБАВИТЬКДАТЕ(НачТаблица1.ДатаСтавки, СЕКУНДА, -1)) КАК Окончание,
НачТаблица.Ставка
ИЗ
НачТаблица КАК НачТаблица
ЛЕВОЕ СОЕДИНЕНИЕ НачТаблица КАК НачТаблица1
ПО НачТаблица.ДатаСтавки < НачТаблица1.ДатаСтавки
СГРУППИРОВАТЬ ПО
НачТаблица.Ставка,
НачТаблица.ДатаСтавки
(5) ПО НачТаблица.ДатаСтавки < НачТаблица1.ДатаСтавки
И НачТаблица.Ставка = НачТаблица1.Ставка а так случайно не более правильно ?! из условия не следует что только одна ставка действует ...
(4) Пересекаться могут только если в регистре есть дата окончания. Если в регистре только дата начала - то ничего пересекаться не может (при условии периодичности ДЕНЬ)
Выбрать t1.Период, ДОБАВИТЬКДАТЕ(t2.Период, ДЕНЬ, -1)
ИЗ Регистр КАК t1
ЛЕВОЕ СОЕДИНЕНИЕ Регистр КАК t2
ПО t2.Период В (Выбрать МИНИМУМ(Период) ИЗ РегистрСведений ГДЕ Период > t1.период)
P.S.
Ни обычное соединение по неравенству, ни тем паче коррелированный запрос (он, вероятно, будет еще медленнее) в общем случае не желательны по причинам производительности.
Разве что бизнес логика гарантирует небольшое кол-во строк в исходной таблице интервалов.
Я бы порекомендовал хранить сразу начало и конец интервала.
Программирование минимальное, а выигрыш во времени исполнения запроса огромный.
Разумеется, за все надо платить.
В данном случае у вас при каждой вставке /изменении строки будет отрабатывать код, ответственный за исключение пересечения интервалов и без блокировок тоже не обойтись.
Так что, если вставляете сразу сотни тысяч записей, то ... задумайтесь об архитектуре решения, а границы все равно храните :)
Из этой же оперы ответ на извечный вопрос "как мне получить курс валюты на каждую дату документа", IMHO, звучит как: "храните его на каждую дату, благо реализуется несложно".