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
ただし、テーブルの名前がTであると仮定します。 dに3つの親がない場合、おそらく何も得られない場合はどうなるかわからない場合は、これらの場合にLEFT JOINを試して、偉大な親のNULL値を取得する可能性があります。また、a.idの代わりにb.parent_idを選択するだけでよいので、最後のJOINは実際には必要ありませんが、パターンを家に帰すためだけです;)