Renvoyer les count = 0 dans un select..pas résolu en fait :(
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)
Code:
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 |
je fais alors cette requete :
Code:
1 2 3
| select count(distinct id) from menus where parent in
( select id from menus where parent_id = 1 )
group by parent |
Résultat : 2
Sauf que je souhaiterais qu'on me renvoie 0,2,0.
Par contre quand je fais
Code:
select count(distinct id) from menus where parent in 4
La ca me renvoie bien 0
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