Я использую PADB/Postgres, в котором отсутствуют рекурсивные CTE. Я пытаюсь найти способ написать рекурсивное самосоединение, используя только обычные соединения/объединения без рекурсивных CTE. Каков самый простой способ сделать это?
У меня есть такая таблица:
PersonID | Initials | ParentID
1 CJ NULL
2 EB 1
3 MB 1
4 SW 2
5 YT NULL
6 IS 5
И я хочу иметь возможность получать записи, относящиеся только к иерархии, начиная с конкретного человека. Итак, если бы я запросил иерархию CJ по PersonID = 1, я бы получил:
PersonID | Initials | ParentID
1 CJ NULL
2 EB 1
3 MB 1
4 SW 2
И для EB я бы получил:
PersonID | Initials | ParentID
2 EB 1
4 SW 2