3,490
社区成员
发帖
与我相关
我的任务
分享
WITH t1 AS
(
SELECT 'l1' line_id,'1' start_surface_id,'A' end_surface_id FROM dual UNION ALL
SELECT 'l2' line_id,'1' start_surface_id,'B' end_surface_id FROM dual UNION ALL
SELECT 'l3' line_id,'B' start_surface_id,'C' end_surface_id FROM dual UNION ALL
SELECT 'l4' line_id,'C' start_surface_id,'D' end_surface_id FROM dual UNION ALL
SELECT 'l5' line_id,'1' start_surface_id,'E' end_surface_id FROM dual UNION ALL
SELECT 'l6' line_id,'1' start_surface_id,'F' end_surface_id FROM dual UNION ALL
SELECT 'l7' line_id,'G' start_surface_id,'H' end_surface_id FROM dual )
SELECT distinct(t.end_surface_id) FROM (
SELECT * FROM t1
START WITH t1.start_surface_id='1'
CONNECT BY PRIOR t1.end_surface_id=t1.start_surface_id) t
ORDER BY T.END_SURFACE_ID