У меня есть некоторые данные, которые выглядят следующим образом:Oracle SQL - найти оригинальный идентификатор в цепи
ACT_ID ACT_ID_FROM
1A
1B 1A
1C 1B
2A
2B 2A
2C 2B
Однако, я хотел бы быть в состоянии создать третий столбец для данных, так это выглядит :
ACT_ID ACT_ID_FROM ORIG_ID
1A 1A
1B 1A 1A
1C 1B 1A
2A 2A
2B 2A 2A
2C 2B 2A
в принципе, я заинтересован в инициирующих ID каждой строке, так 1C и 1В как изначально пришел из ACT_ID 1А (который может быть определен из колонки ACT_ID_FROM), но я не знаю, как чтобы получить 1A, особенно когда в цепочке было несколько идентификаторов. Я использую oracle 10g.
Аналогичный вопрос уже задан здесь: Find last record in a single-table chain (SQL Server), но я не уверен, как применить это к моей собственной проблеме.
Заранее благодарим за любые советы или помощь.
третья строка первой таблицы должны быть '1С 1B', правильно? – mavroprovato
Да, он идет 1A -> 1B -> 1C, поэтому 1C поступает из 1B, а 1B - от 1A, 1A - исходный экземпляр, поэтому он появился из ниоткуда. Я исправил это сейчас, спасибо за место. – bawpie