MudGuard: Nested Sets Ebenen Problem, Having???

Beitrag lesen

Hi,

Ich habe folgende Abfrage in der der Ast mit der ID 4 ausgegeben wird (inklusive der ID 4)

SELECT o. * , COUNT( p.id ) -1 AS level

FROM menu AS n, menu AS p, menu AS o
WHERE o.lft
BETWEEN p.lft
AND p.rgt
AND o.lft
BETWEEN n.lft
AND n.rgt
AND n.id =4
GROUP BY o.lft
ORDER BY o.lft


>   
>   
> Dann wird folgendes ausgegeben  
>   
> id ! name ! lft ! rgt ! level  
>   
> 4	Menu    1	12	23	1  
> 205	Ebene 2	13	14	2  
> 206	Ebene 2	15	20	2  
> 208	Ebene 3	16	17	3  
> 209	Ebene 3	18	19	3  
> 207	Ebene 2	21	22	2  
>   
>   
> Mein Wunschergebnis  ist nun das immer nur die Einträge die eine Ebene unterhalb der aufgerufenen ID sind sind ausgegeben werden, also wenn wie in meinem Beispiel die ID 4 abgefragt wird, soll  
>   
> 205	Ebene 2	13	14	2  
> 206	Ebene 2	15	20	2  
> 207	Ebene 2	21	22	2  
>   
> oder wenn ID 206 abgefragt wird, dann eben  
>   
> 208	Ebene 3	16	17	3  
> 209	Ebene 3	18	19	3  
>   
> Mein Ansatz wäre es mit HAVING Level  =2 zu versuchen, aber wie bekomme ich den jeweiligen Level, der über der abgefragten ID ist heraus?  
  
Das sollte doch  n.level + 1  sein.  
  
cu,  
Andreas

-- 
[Warum nennt sich Andreas hier MudGuard?](http://MudGuard.de/)  
[O o ostern ...](http://ostereier.andreas-waechter.de/)  
  
Fachfragen per Mail sind frech, werden ignoriert. Das Forum existiert.