Existují dvě základní metody, jak toho dosáhnout:seznamy sousedství a vnořené seznamy. Podívejte se na Správa hierarchických dat v MySQL .
To, co máte, je seznam sousedství. Ne, neexistuje způsob, jak rekurzivně zachytit všechny potomky pomocí jediného příkazu SQL. Pokud je to možné, stačí je všechny chytit a zmapovat je v kódu.
Vnořené sady mohou dělat, co chcete, ale mám tendenci se tomu vyhýbat, protože náklady na vložení záznamu jsou vysoké a je náchylný k chybám.