我如何在POSTGRESQL中创建查询,该查询将对每个节点进行递归迭代:它应遍历其所有父节点,直到到达根节点为止。
我知道在Oracle中,我们可以使用CONNECT BY PRIOR和CONNECT_BY_ROOT来实现这一目标。
例如: 对于下表:
id Parent_id
1 NULL
2 1
3 2
4 3
5 3
6 5
查询应返回如下结果:
id parent_id
1 NULL
2 1
3 2
3 1
4 3
4 2
4 1
5 3
5 2
5 1
6 5
6 3
6 2
6 1
即它应该列出当前ID的直接父ID以及所有间接父ID。
已经有一些答案说明了如何在POSTGRESQL中创建树结构,但是当您提供特定的子节点时,这些答案才有效。在我的问题中,我想找出所有子节点直到根节点的父层次。根节点的父节点也应显示为NULL。
谢谢。