[ORACLE 10G] Calcul du chemin récursif pour toutes les occurrences d'une table
Bonjour,
j'ai une table Entite avec une relation récursive :
Entite
idEntite
libelleEntite
idEntiteParente
idTypEntite
- Je sais calculer le chemin récursif pour une entité pour avoir toute sa hiérarchie
- Je sais retrouver, dans le chemin récursif d'une entité donnée, la prochaine entité de type X avec la requête suivante :
Code:
1 2 3 4 5
| Select (Select libelleEntite from Entite where idEntite = 1) as enfant,
e.libelleEntite as parentDeType9, level
from Entite e start with e.idEntite = 1
where e.idTypEntite = 9
connect by prior e.idEntiteParente = e.identite |
retour :
Code:
'MonEntite1';'ParentDeType9DeMonEntite1';12
Je n'arrive cependant pas à formuler ma requête pour que celle ci me renvoie en résultat toutes mes entités et à coté tous leurs parentsDeType9 respectifs.
retour attendu :
Code:
1 2 3 4 5
|
'MonEntite1';'ParentDeType9DeMonEntite1';12
'MonEntite2';'ParentDeType9DeMonEntite2';4
'MonEntite3';'ParentDeType9DeMonEntite3';18
'MonEntite4';'ParentDeType9DeMonEntite4';2 |
Auriez vous une idée ?
PS : Pour ce cas, on considère qu'il y aura toujours une entité de type 9 dans la hiérarchie de chaque entité, sinon on ne renvoie rien.
Merci d'avance !