2012-05-23 2 views
0

를 얻을.포스트 그레스 - - 재귀와 나는 테이블이 부모 이름 열

내가 대신 셀 이름의 부모 ID를 제공하는 쿼리가 같은 -

 
subcellA1 - cellA 
subcellA2 - cellA 
subsubcellA1- subcellA1 
subsubcellA2- subcellA2 

뭔가. ID 대신 부모의 이름을 어떻게 얻을 수 있습니까? 원래 테이블에 합류

WITH RECURSIVE cell_child as 
(
SELECT fp.* FROM cell as fp WHERE fp.parent = '111' 
UNION ALL 
SELECT f.* 
    FROM 
    cell as f 
JOIN cell_child as fc 
ON (f.parent = fc.cellpk)  
)  
select * from cell_child as cc 

답변

0

시도 :

WITH RECURSIVE cell_child AS (
    SELECT fp.* FROM cell as fp WHERE fp.parent = '111' 
    UNION ALL 
    SELECT f.* FROM cell AS f 
    JOIN cell_child as fc ON f.parent = fc.cellpk 
)  
SELECT cc.*, parent.cellname 
    FROM cell_child AS cc 
    LEFT JOIN cell AS parent ON parent.cellpk = cc.parent;