arboressence dynamique
Posté : 27 sept. 2012, 15:56
Bonjour à tous,
Je cherche à faire une requète un peu spécial
voici une structure simplifié de mes tables
La table titre qui fait correspondre un titre à un identifiant unique
Et la table parent qui fait correspondre à l'identifiant unique de la table titre à ce même identifiant de son parent
J'ai trouvé une requète :
J'aimerais avoir pour chaque titre ayant des enfants une ligne suplémentaire suivi de NULL ceci donc
Question subsidiare, est il possible de s'affranchir du niveau maximum d'enfant. Dans cet exemple, il y a J'usquà 2 niveau, ce qui demande les 2 dernière paires de LEFT JOIN. Si j'ai un nombre plus grands voir inconnu ou illimité de possibilité de niveau d'enfant, est il possible de construire une requète qui me donnerai mon résultat?
Une boucle dans ma requète ?
Je cherche à faire une requète un peu spécial
voici une structure simplifié de mes tables
La table titre qui fait correspondre un titre à un identifiant unique
Code : Tout sélectionner
C1 C2
______
0 t1
1 t2
2 t3
3 t4
4 t5
5 t6
6 t7
7 t8
8 t9
9 t10
10 t11Code : Tout sélectionner
c1 c2
______
4 3
5 3
7 6
8 7
9 7
10 6SELECT t1.C2, t2.C2, t3.C2
FROM titre t1
LEFT JOIN parent p1 ON t1.C1 = p1.c1
LEFT JOIN parent p2 ON t1.C1 = p2.c2
LEFT JOIN titre t2 ON t2.C1 = p2.c1
LEFT JOIN parent p3 ON t2.C1 = p3.c2
LEFT JOIN titre t3 ON t3.C1 = p3.c1
WHERE p1.c1 <=> NULL
Qui me donne presque ce que je veux, c'est à dire ceci :
Code : Tout sélectionner
t1
t2
t3
t4 t5
t4 t6
t7 t8 t9
t7 t8 t10
t7 t11Code : Tout sélectionner
t1
t2
t3
t4
t4 t5
t4 t6
t7
t7 t8 t9
t7 t8 t10
t7 t11Une boucle dans ma requète ?