yo,
ist es möglich, mit einer sql-abfrage herauszubekommen, dass die id 10 (wenn man im baum denkt) der id 7 untergeordnet ist? wenn ja, wie?
wenn ich dich richtig verstanden habe, dann willst du von einer beliebigen person (in diesem falle id = 10) den höchsten vorgesetzten bekommen. zum einen fehlt dafür wie bereits angesprochen wurde in der beispieltabelle die id 7. dabei ist wichtig zu wissen, wie nun die id = 7 bei der spalte parent_id terminiert ist, sprich ob es sich dabei um ein NULL feld handelt oder anders gekennzeichnet ist, dass diese id keinen vorgestzten mehr hat.
viel wichtiger ist es aber, dass es sich hierbei um rekursionen handelt. und diese sollte man nach möglichkeit vermeiden.
dafür will ich dir gerne mal ein beispiel geben. wenn nun id = 10 als vorgesetzten id =5 hat und id = 5 hat als vorgesetzten id = 3 und id = 3 hat wiederum id = 10 als vorgesetzten, dann hast du ein ein kreisverkehr und somit ein problem. und bei referentieller integrität bedeutet dass, du kannst keinen dieser drei datensätze mehr löschen und musst auch tricksen, um sie in die tabelle reinzubekommen.
mit anderen worten solltst du noch mal über dein datenbank-design nachdenken. dann könnte sich das problem mit deiner einen abfrage lösen.
was die abfrage betrifft, so wird es schwer sein, diese abzubilden, vielleicht aber nicht unmöglich. aber dafür fehlt wie bereits gesagt die id = 7 und ihre terminierung.
Ilja