Я столкнулся с проблемой, используя connect by.
У меня есть запрос, с помощью которого я получаю несколько столбцов, включая эти три:
- ID
- идентификатор родителя
- идентификатор объекта
Теперь для одних и тех же ID
и parentID
существует несколько связанных объектов, например.
ID ParentID ObjectID
1 0 112
1 0 113
2 0 111
2 0 112
3 1 111
4 1 112
Я пытаюсь использовать connect by
, но не могу получить результат в правильной иерархии. Мне нужно, как показано ниже. Возьмите комбинацию ID
-parentID
, отобразите все строки с этим ID-parentID
, а затем все дочерние элементы этого ID
, т.е. чьи parentID
=ID
ID ParentID ObjectID
1 0 112
1 0 113
3 1 111
4 1 112
2 0 111
2 0 112
select ID,parent_id, object_id from table start with parent_id=0
connect by prior id=parent_id order by id,parent_id
Вышеупомянутый запрос не приводит к правильной иерархии, которая мне нужна.
0
? и вы хотите первые два уровня Чайлдс? Я не понимаю, чего вы пытаетесь достичь. - person Florin Ghita   schedule 21.06.2012