Bonjour,
voilà, je ne sais pas trop si c'est possible mais je souhaite faire une requête récursive qui contient elle-même une requête récursive et remonter des valeurs de la sous-requête dans la "sur"-requête.
Je vais essayer d'être clair:
J'ai une table Projwbs (wbs_id, parent_wbs_id, phase_id)
Je veux récupérer, sous un élément donné, la liste des éléments dont phase_id est non nul et leurs enfants. Je fais donc :
j'obtiens donc par exemple :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8 SELECT pw.wbs_id, phase_id FROM projwbs pw START WITH pw.wbs_id IN (SELECT wbs_id FROM admuser.projwbs WHERE phase_id IS NOT NULL START WITH wbs_id = 244647 CONNECT BY PRIOR wbs_id = parent_wbs_id ) CONNECT BY PRIOR pw.wbs_id = parent_wbs_id
WBS_ID PHASE_ID
244653 1169
244654 1169
244656 1169
244657 ----
244658 1169
244659 ----
Le hic c'est que je voudrais également obtenir la valeur phase_id pour les enfants. En gros, je voudrais que la valeur phase_id du parent soit propagée aux enfants (à la place des ----).
Voyez vous une manière de faire ?
J'ai tenté avec un bloc WITH contenant les parents de créer la requête pour les enfants, mais ça explose le temps d'exécution ....
Merci en tous cas d'avoir lu jusqu'ici ...![]()
Partager