Мне нужно сделать вложенный запрос для одной таблицы. Каждая строка потенциально является родителем или дочерним элементом другой строки.
Возможно ли сделать это с помощью одного оператора select? Я начал использовать это утверждение, но оно опускается только на один уровень.
select * from myTable where parent_id in
(select id from myTable where name = 'manager' )
Однако этот выбор опустится только на один уровень. Если в строке несколько дочерних элементов, они будут игнорироваться. (В таблице каждая строка имеет поле Id , если у строки есть родитель, тогда значение родительского элемента Id будет находиться в поле parent_Id дочернего элемента.)
Если бы я мог включить цикл while в SQL, который всегда проверял бы, был ли возвращенный Id родительский или нет, и проверял ли он другую дочернюю строку, проверяя другие строки parent_Id . Однако я обеспокоен тем, что потребуется много циклов, чтобы в конечном итоге найти все родительские дочерние отношения. Какие-либо предложения? Спасибо
с использованием Oracle db