Je ne connais pas bien le code postal américain et le système de division territoriale, mais je suppose que c'est un peu comme celui de l'Allemagne.
- Un État compte plusieurs comtés.
- Un comté compte plusieurs villes.
- Une ville a plusieurs codes postaux.
Par conséquent, j'utiliserais le schéma suivant.
ZipCodes CityZipCodes
------------ ---------------- Cities
ZipCode (PK) <─── ZipCode (PK)(FK) -----------
City (PK)(FK) ───> CityId (PK)
Name
County (FK) ───┐
│
│
Counties │
------------- │
States CountyId (PK) <───┘
----------------- Name
StateId (PK) <─── State (FK)
Name
Abbreviation
Fixé pour plusieurs villes par code postal.