Supponendo che le tue categorie non possano formare cicli, come a->b->c->a, la tua struttura è chiamata grafo aciclico diretto, che non è facile da gestire in SQL, ma possibile. Cercando su Google che dovrebbe dare alcuni risultati, puoi anche iniziare da qui:http://www. codeproject.com/KB/database/Modeling_DAGs_on_SQL_DBs.aspx