Wenn du mehrere Tabellen für die gleichen Daten anlegst ist das i.d.R. schon falsch, genau wie Spalten durchnummerieren. Für hierarchische Daten hast du aber unterschiedliche Möglichkeiten die in einer Tabelle abzulegen - mit vielen Vor- und Nachteilen. Als Parent, als Nested Set oder als Pfad, mal so als Beispiele. Kommt aber auch auf deine Datenbank an, für Parent ist eine DB gut die RECURSIVE unterstützt, wie PostgreSQL.