Postgres - 检索最后一个子层次结构

时间:2018-01-17 18:56:22

标签: sql postgresql hierarchical-data

假设我有以下DDL:

CREATE table foo(id integer primary key, parent_id integer);
insert into foo values(1,null);
insert into foo values(2,null);
insert into foo values(3,2);
insert into foo values(4,2);
insert into foo values(5,4);

我只需要检索层次结构的最后一级,并且一个项目可以有多个子项,这样我只需要检索标识为135的行

1 个答案:

答案 0 :(得分:0)

使用不存在

 Select *
 From foo f1
 Where not exists (
    Select 1
    From foo f2
    Where f2.parent_id = f1.id
 )