Hallo HIrsch
Ich brauch aber auf jeden fall ne for schleife gelle?
Ja. Falls Dein DBMS den entsprechenden Sprachumfang von SQL unterstützt, bevorzugt in SQL, falls nicht in der Anwendung.
Welches Datenbankmanagementsystem steht Dir in welcher Version zur Verfügung?
Das geht mir zu hoch...
So schwer sind Schleifen nun auch wieder nicht. Für Dein Problem der Algorithmus (ohne Fehlerbehandlung) in einer Art Pseudocode:
Ermittle zur gegebenen ID die Parent-ID
Solange die Parent-ID grösser ist als 1
ID := Parent-ID
Ermittle die Parent-ID zur ID
Ende Solange
Wenn Parent-ID gleich 1
Ermittle den Inhalt der Suchspalte zur ID
Sonst
Fehler aufgetreten
Ende Wenn
Wenn Dein Baum unsauber aufgebaut ist, dann kannst Du in die schönste Endlosschleife geraten. Deswegen mein Tipp: Speichere die (redundante, da berechenbare) Tiefe jedes Knotens mit ab. Zähle die Anzahl der Schleifendurchläufe mit. Ist sie größer als die maximale Tiefe, breche mit einer Fehlermeldung ab.
Sollte weder in SQL noch in der Anwendung schwer zu schreiben sein.
Freundliche Grüße
Vinzenz