Linuchs: Vorfahren aus Datenbank rekursiv ermitteln?

Beitrag lesen

Moin,

die Vorfahren einer Person ermittle ich durch viele JOIN, bis zu den Urgroßeltern sind das schon 14 (2+4+8) in verschiedenen Spalten eines Treffers.

  $q = "
#~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# Person, Eltern, Großeltern lesen zum Anzeigen
#~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
SELECT

 per8.id            mu_mu_mu_id
,per8.geb_name      mu_mu_mu_geb_name
,per8.vor_name      mu_mu_mu_vor_name
,per8.beruf         mu_mu_mu_beruf
,per8.geb_datum     mu_mu_mu_geb_datum
,per8.geb_ort       mu_mu_mu_geb_ort
,per8.sterbe_datum  mu_mu_mu_sterbe_datum
,per8.sterbe_ort    mu_mu_mu_sterbe_ort
,TIMESTAMPDIFF( YEAR, per8.geb_datum, IF( per8.sterbe_datum IS NULL, CURDATE(), per8.sterbe_datum )) mu_mu_mu_alter
...
-- mu_mu_mu
LEFT JOIN ".$db[0]['personen']." per8
ON        per8.id = per4.mutter_id

Ich suche nach einer Möglichkeit, die Personen einzeln zu bekommen . Wie könnte das per SQL gehen? Rekursiv?

ich habe bisher diese Struktur:

Gruß, Linuchs