Группировка по дате, с разрывами

iceman

говнокодер
Oracle 10g

есть данные - список событий:
date - id - type - begin_date - end_date
2011-08-01 00110009 OFF_LINE 08:06:18 08:16:31
2011-08-01 00110009 OFF_LINE 08:16:31 08:18:08
2011-08-01 00110009 OFF_LINE 08:25:12 08:29:33
2011-08-01 00110009 OFF_LINE 08:36:18 08:51:18
2011-08-01 00110009 OFF_LINE 08:51:18 09:06:18
2011-08-01 00110009 OFF_LINE 09:06:18 09:21:18

нужно сгруппировать, чтобы был следующий вид:

2011-08-01 00110009 OFF_LINE 08:06:18 08:18:08
2011-08-01 00110009 OFF_LINE 08:25:12 08:29:33
2011-08-01 00110009 OFF_LINE 08:36:18 09:21:18

т.е. если дата окончания разрыва связи = дате начала следующего разрыва связи - то сгруппировать воедино, если нет, то оставить строчку

не знаю даже что придумать.
 

prolis

Новичок
может так
Код:
select t1.begin_date, nvl(t2.end_date,t1.end_date)
from table t1
left join table t2 on t1.end_date=t2.begin_date
 
Сверху