Com este modelo é impossível
- Em vez de usar root, use NULL , para que você possa usar InnoDB Foreign Key + Cascade Delete.
- Em vez de usar a string parent_key, use id (por exemplo, sun =1, moon =2)
Outra maneira é alterar o modelo de dados, para que você possa selecionar facilmente quaisquer descendentes do elemento - veja isso por exemplo http://www.sitepoint.com/hierarchical-data-database-2/