Это не ответ, но вместо того, чтобы использовать много вариантов выбора, вы можете использовать много левых соединений, чтобы пересечь 4 иерархии. Вместо стольких строк кода это всего лишь один запрос:
select a.id,a.parent_id,b.id,b.parent_id,c.id,c.parent_id,d.id,d.parent_id from a left join b ON a.id = b.parent_id left join c on b.id=c.parent_id left join d on c.id=d.parent_id;
Вы также можете использовать мой запрос с одной таблицей, поскольку вы можете использовать псевдоним таблицы:
left join mytable as c on c.id=d.parent_id ... ...
Но, к сожалению, mysql не поддерживает рекурсивные выборки. Может, попробовать другую базу данных?