Sample Header Ad - 728x90

child to parent in same table - there must be a better way to do this

0 votes
1 answer
2844 views
i want to relate child to parent from same table. Table is built like this. id, parentid, name i want to have the complete path of the [name] columns without specify levels like i have in the example. I would like to have a better way to display path with kind of infinite levels of parent and child. i hope this make sense this is what i have SELECT case when s6.id is null and s5.id is null and s4.id is null and s3.id is null and s2.id is null then s1.name when s6.id is null and s5.id is null and s4.id is null and s3.id is null then s2.name || ' > ' || s1.name when s6.id is null and s5.id is null and s4.id is null then s3.name || ' > ' || s2.name || ' > ' || s1.name when s6.id is null and s5.id is null then s4.name || ' > ' || s3.name || ' > ' || s2.name || ' > ' || s1.name when s6.id is null then s5.name || ' > ' || s4.name || ' > ' || s3.name || ' > ' || s2.name || ' > ' || s1.name else 'n/a' end as path FROM mytable s1 LEFT JOIN mytable s2 ON s1.parentid = s2.id LEFT JOIN mytable s3 ON s2.parentid = s3.id LEFT JOIN mytable s4 ON s3.parentid = s4.id LEFT JOIN mytable s5 ON s4.parentid = s5.id LEFT JOIN mytable s6 ON s5.parentid = s6.id ; thanks in advance
Asked by wiper (3 rep)
Apr 21, 2022, 08:27 AM
Last activity: Apr 21, 2022, 08:45 AM