Tara/judet/localitate este un model ierarhic, si ca atare este mai bine reprezentat cu o singura tabela (entity_id, entity_type, parent_id, entity_name). Modelarea ierarhica permite sa adaugi noi nivele (sector de ex.) fara sa schimbi codul aplicatiei si poate reprezenta foarte usor problema care o ai tu (lipsa de granularitate a informatiei). Student are o singura cheie, referind enityt_id, si poate fi un id de tara, de judet, de oras sau de satuc. Si decind cu CTE interogarile ierarhice sint floare la ureche.
http://rusanu.com