MySQL не поддържа рекурсивни заявки.
Предлагам ви да разгледате презентацията на Бил Карвин където той сравнява четири различни модела за съхранение на иерархични данни и разглежда техните плюсове и минуси:
- Списък на съседство
- Изброяване на пътя
- Вложени набори
- Таблица за затваряне
Слайд 48 показва относителната трудност на определени видове заявки с всеки от моделите. От въпроса ви звучи, че се интересувате най-много от „поддървото на заявки“, за което списъкът на съседство (моделът, който използвате в момента) се представя най-слабо от четирите.
Като алтернатива, ако просто искате да изберете цялото дърво, както във всички данни в таблицата, тогава можете да използвате простата заявка SELECT * FROM yourtable
и реконструирайте дървовидната структура в клиента.