Создать диапазон из дат
Помогите пожалуйста собрать одинокие даты в отдельные диапазоны по условию,что даты должны идти друг за другом,если не идут,то начинается другой диапазон. Пример дат:
with cte as (
select to_date ('01.01.2023') as dt
from dual
union all
select to_date ('02.01.2023') as dt
from dual
union all
select to_date ('03.01.2023') as dt
from dual
union all
select to_date ('04.01.2023') as dt
from dual
union all
select to_date ('10.01.2023') as dt
from dual
union all
select to_date ('11.01.2023') as dt
from dual
)
На выходе должно получиться два диапазона: 01.01.2023 - 04.01.2023 и 10.01.2023 - 11.01.2023.
Источник: Stack Overflow на русском