Подумайте: если я знаю штат, а штат ФК - это страна, я транзитивно знаю страну, и это лишняя денормализация, чтобы включить ее снова.
Если я знаю город, а город ФК - это штат, я транзитивно знаю штат, и это лишняя денормализация, чтобы включить его снова.
Так что, если я знаю город, я знаю штат, и я знаю страну.
АДРЕС (id, адрес, city_fk),
CITY (идентификатор, имя, штат ФК),
STATE (идентификатор, имя, странаFK),
СТРАНА (идентификатор, имя)
На практике существуют законные аргументы в пользу того, чтобы сделать город сущностью или атрибутом. Для чего-то вроде почтового адреса, вероятно, проще сделать его атрибутом.
Для чего-то вроде «файла избирателей» (база данных, используемая для предвыборной агитации и политических кампаний) может иметь смысл сделать город единым целым. Это особенно важно в американском штате Вирджиния, который является уникальным в США, так как объединенные города являются независимыми политическими юрисдикциями, в отличие от остальных штатов США, где под юрисдикцией большинство городов входят в состав округов.
Даже в штатах, отличных от Вирджины, потому что в городах, являющихся частью округов, проводятся отдельные выборы (для мэров и советов), в политической базе данных полезно делать города (и становиться меньше, приходы и участки, городки и деревни, и получение большего, округов и HD и SD и CD) в организации.
Теперь возьмем, к примеру, Лейквуд в американском штате Огайо. Юрисдикция, Лейквуд - округ Кайахога. С точки зрения политической телевизионной рекламы, она является частью Области рынка телевидения Кливленда-Акрона-Кантона. Он находится недалеко от города Кливленд, который также является юрисдикцией округа Куйахога. Лейквуд разделен на четыре приходских совета, каждый из которых разделен на пятнадцать или более участков. Он является частью государственного дома Район 13, который включает Лейквуд и часть западной части города Кливленда. Он является частью штата Сенат округа 23, который включает в себя Бруклин, Брук Парк, Кливленд (округа 7-21 и часть округа 14), Лейквуд, Линдейл, Мидлбург-Хайтс, Парма и Парма-Хайтс. Лейквуд находится в 10-м округе США в штате Огайо (представлен Денисом Кусиничем).
Теперь, для любого данного избирателя Огайо, как мы представляем в базе данных, кто будет в его избирательном бюллетене, когда он проголосует?