Не ожидал такого, даже не смотрел историю выше. Только вот мне кажется, что у подхода через две таблицы есть явные минусы, которые можно предположить прямо сейчас: необходимость создавать третью, связующую таблицу; более затратное чтение; нельзя из дочерней или родительской категорий сделать обычную обновлением данных; в принципе нет обычных категорий (не родительская и не дочерняя)
не делай себе мозг, parent_id в таблице category и проблема решена, стандартная задача. Не разу не видел чтобы вообще по другому организовывали категории. И будет у тебя там древовидная структура. Не веришь, так возьми и создай таблицу с категориями и назначай одной несколько дочерних в parent_id а при условии выборки потом указывай это поле, ну это думаю и сам знаешь