오라클 에서는 계층구조 질의 관련해서 START WITH CONNECT BY 이런식으로 써서 레벨도 나타내고 합니다.
그런데 PostgreSQL 에서는 위방법이 통하는지요? 안되면 계층질와 레벨 관련해서 어떻게 사용을 해야하는지좀 알려주세요.
common table expression을 사용하면 됩니다.
대충 다음과 같은 식입니다.
with tree(id, parent_id, c, depth) as ( select t.*, 0 depth from t where parent_id is null) union all select t.*, tree.depth+1 depth from tbl join t on (t.id = tree.parent_id) ) select * from tree where id = 100;