У меня есть таблица персона с этими столбцами, зависящими друг от друга.
person_id, related_person_id, beginner_related_person_id
Пример моих данных
person_id related_person_id beginner_related_person_id
1 null null
2 1 null
3 2 null
4 null null
5 4 null
6 null null
Этот столбец beginner_related_person_id является новым и на данный момент пустым.
Я должен обновить эту строку значениями из person_id, но с корневым значением person_id.
person_id related_person_id beginner_related_person_id
1 null null
2 1 1
3 2 1
4 null null
5 4 4
6 null null
Я начал писать запрос, но мне нужна подсказка.
update person
set beginner_related_person_id = person_id
where person_id in (select distinct person_id from person start with related_person_id in (select person_id from person)
connect by prior beginner_person_id = person_id);
Должен ли я использовать петли? Или что-то еще?