1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 |
WITH RECURSIVE children AS ( SELECT '0'::varchar AS parent_code, A.level_code, A.level_name, A.code_length, 1 AS DEPTH FROM c_levels A WHERE A.level_code ='05' UNION ALL SELECT B.parent_code AS parent_code, B.level_code, B.level_name, B.code_length, DEPTH + 1 FROM c_levels B JOIN children C ON ( B.level_code = C.parent_code )) SELECT * FROM children ORDER BY DEPTH DESC |