bonjour a tous,
Pour construire un menu de navigation hierarchique, j'ai besoin de construire une liste présentant le nombre de sous niveaux de chaque noeud.
Ma base type (sous oracle 8)
je fais alors cette requete :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7 ID ----- PARENT ---- LABEL 1 ----- 0 ---- TOP 2 ----- 1 ---- Menu1 3 ----- 1 ---- Menu2 4 ----- 3 ---- Menu 2.1 5 ----- 3 ---- Menu 2.2 4 ----- 1 ---- Menu 3
Résultat : 2
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3 select count(distinct id) from menus where parent in ( select id from menus where parent_id = 1 ) group by parent
Sauf que je souhaiterais qu'on me renvoie 0,2,0.
Par contre quand je fais
La ca me renvoie bien 0
Code : Sélectionner tout - Visualiser dans une fenêtre à part select count(distinct id) from menus where parent in 4
Merci a tous ceux qui pourront m'aider sur ce sujet sur lequel je tourne en rond, j'aimerais eviter de faire cela par programmation, en faisant tourner plusieurs requetes séparées.
Lionel
Partager