Как перейти с IIB на AppConnect

Принимаемый ответ @Meherzad работает только в том случае, если данные находятся в определенном порядке. Это происходит с данными из вопроса ОП. В моем случае мне пришлось изменить его для работы с моими данными.

Примечание. Это работает только тогда, когда каждый идентификатор записи (col1 в вопросе) имеет значение БОЛЬШЕ, чем этот «родительский идентификатор» записи ( col3 в вопросе). Это часто бывает так, потому что обычно родитель должен быть создан первым. Однако, если ваше приложение допускает изменения в иерархии, где элемент может быть повторно зарегистрирован в другом месте, тогда вы не можете полагаться на это.

Это мой запрос, если он кому-то помогает; обратите внимание, что это не работает с данным вопросом, потому что данные не соответствуют требуемой структуре, описанной выше.

select t.col1, t.col2, @pv := t.col3 col3
from (select * from table1 order by col1 desc) t
join (select @pv := 1) tmp
where t.col1 = @pv

Разница в том, что table1 упорядочивается по col1, так что родитель будет после него (поскольку значение родительского col1 меньше, чем у ребенка).

1
задан Roman Pankratov 2 March 2019 в 14:16
поделиться