Дополнительная таблица зависимостей - не самое изящное решение. Гораздо красивее будет создать иерархию.
Помните, как во всех учебниках по SQL приводят в качестве примера таблицу сотрудников с указанием, кто из них является чьим менеджером?

А вот еще ссылка в тему:
Иерархические (рекурсивные) запросы, там рассказывают, как с такими таблицами обращаться