SELECT c.id, b.id, a.id
FROM T
INNER JOIN T AS c on T.parent_id=c.id
INNER JOIN T AS b ON c.parent_id = b.id
INNER JOIN T as a ON b.parent_id = a.id
forudsat at dit bord hedder T. dog ikke testet. ikke sikker på, hvad der sker, hvis d ikke har tre forældre, formentlig forstår du ikke noget, kan du prøve LEFT JOIN i disse tilfælde for at få NULL-værdier for de gode forældre. Den sidste JOIN er heller ikke rigtig nødvendig, fordi du blot kan vælge b.parent_id i stedet for a.id, men du ved, bare for at køre mønsteret hjem;)