select
p4.parties_id as parent4_id,
p3.parties_id as parent3_id,
p2.parties_id as parent2_id,
p1.parties_id as parent_id,
p1.id as party_id,
p1.name,
concat(
if(p4.parties_id,p4.parties_id,''),',',
if(p3.parties_id,p3.parties_id,''),',',
if(p2.parties_id,p2.parties_id,''),',',
if(p1.parties_id,p1.parties_id,''),',',
if(p1.id,p1.id,'')) as permissions
from security.parties p1
left join security.parties p2 on p2.id = p1.parties_id
left join security.parties p3 on p3.id = p2.parties_id
left join security.parties p4 on p4.id = p3.parties_id
where
8 in (p1.parties_id,
p2.parties_id,
p3.parties_id,
p4.parties_id
)
order by 1, 2, 3, 4, 5;
Last active
September 23, 2019 13:45
-
-
Save ramingar/df0a6408640d805f38de3506970ae736 to your computer and use it in GitHub Desktop.
Dado un id, buscar toda la jerarquía de hijos asociados #sql #hierarchy #children #mysql
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment