Я понимаю это как пробелы и проблему острова. Требуется минимальная дата смежных строк с одинаковым значением во всех столбцах ожидаемой даты, а затем вытащить запись с минимальной датой.
Вот один из способов ее решения с использованием row_number()
и агрегации :
select
id,
division,
sub_div,
status,
queue,
min(event_dattim) min_event_dattim
from (
select
t.*,
row_number() over(order by event_dattim) rn1,
row_number() over(
partition by id, division, sub_div, status, queue
order by event_dattim
) rn2
from mytable t
) t
group by
id,
division,
sub_div,
status,
queue,
rn1 - rn2