17,086
社区成员
发帖
与我相关
我的任务
分享
WITH T1 AS(
select connect_by_root(s) S,E
from t T1
connect by prior s<=s and prior e>=s AND PRIOR ID<>ID
start with not exists(select 1 from T WHERE S<=T1.s and E>=T1.S AND ID<>T1.ID)
)
SELECT S,MAX(E) AS E
FROM T1
GROUP BY S
WITH T1 AS(
select connect_by_root(s) S,E
from t T1
connect by prior s<=s and prior e>=s AND PRIOR ID<>ID
start with not exists(select 1 from T WHERE S<=T1.s and E>=T1.S AND ID<>T1.ID)
)
SELECT SUM(MAX(E)-S)
FROM T1
GROUP BY S