@AlexBoss

Как сделать рекурсивный запрос с возвращением всех пройденных элементов?

Есть таблица с полями name, from_id, to_id. Как сделать запрос на входе которого приходит from_id и рекурсивно пройти по всей таблице и собрать все to_id в том числе и для всех дочерних элементов?
  • Вопрос задан
  • 72 просмотра
Решения вопроса 1
@galaxy
with recursive q as (
    select * from tes where from_id = 1
     union all
    select tes.* from tes, q where tes.from_id = q.to_id
)
select * from q order by from_id, to_id

https://www.db-fiddle.com/f/4jyoMCicNSZpjMt4jFYoz5/4445
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы