2013-06-11 89 views
0

從美國的50個州開始,其中大多數州都有除路易斯安那州和阿拉斯加州之外的縣。如何處理州,縣,市關係? (針對美國50個州)

我的表是這樣的

**State_tbl** 
State_id 
State_name 

**County_tbl** 
County_id 
State_id ->state_tbl 
County_name 

**City_tbl** 
City_id 
County_id ->county_tbl 
City_name 

然而,由於兩個州阿拉斯加和路易斯安那州沒有縣,我會執行這些問題。而且我還看到,在一個州內沒有縣或者屬於兩個縣的城市(不知道這是否屬實)。

什麼是設計數據庫的最佳方法?

UPDATE更多信息:
我有這將註冊成服務(一個國家內)特定城市的用戶。當我檢索數據時,我希望能夠顯示所服務的城市以及縣。用戶與所服務城市之間會存在多對多的關係,以及城市與縣之間的一對多關係。

即:
約翰的K - 在STATE_A服務(所有縣市以下屬於STATE_A)
-cities服務:City_A(county_x),City_B(County_Y),City_C(County_Y)
-counties服務: County_X,County_Y

此外,我是否能夠檢索用戶的信息和一個查詢中服務的所有城市和縣?

+0

如果您需要跟蹤各縣出於某種原因,使用相同的場跟蹤教區和行政區出於同樣的原因(不管它可能是什麼)聽起來是合理的。比如說,紐約市覆蓋5個縣,你如何設計這個將取決於你對數據做什麼,你不告訴我們。 – geoffspear

+0

Wooble是對的。給我們更多的信息,你會得到更好的答案。 – Jeffrey

+0

添加了更多信息。通過你給出的答案,我傾向於做1-> N郡1-> N城市表。每個縣屬於一個國家,每個城市都屬於一個縣(或任何形式的組織)。 – Cristian

回答

0

只要把自治市鎮和教區和縣(或任何其他命名慣例)視爲同一件事。美國郵政對待他們是相同的,人口普查局也對待他們一樣。美國的大多數政府(和非政府組織)需要根據縣或統計區域生成任何類型的報告,依靠以這些單位爲基礎的MSA或CBSA代碼,所有這些單位都被稱爲縣 - 即使他們可能有其他地方的名字。

阿拉斯加,這裏是所有行政區:

ANCHORAGE 
BETHEL 
ALEUTIANS WEST 
LAKE AND PENINSULA 
KODIAK ISLAND 
ALEUTIANS EAST 
WADE HAMPTON 
DILLINGHAM 
KENAI PENINSULA 
YUKON KOYUKUK 
VALDEZ CORDOVA 
BRISTOL BAY 
MATANUSKA SUSITNA 
NOME 
YAKUTAT 
FAIRBANKS NORTH STAR 
DENALI 
NORTH SLOPE 
NORTHWEST ARCTIC 
SOUTHEAST FAIRBANKS 
JUNEAU 
HOONAH ANGOON 
HAINES 
PETERSBURG 
SITKA 
SKAGWAY 
KETCHIKAN GATEWAY 
PRINCE OF WALES HYDER 
WRANGELL 

對於路易斯安那,這裏是所有教區:

JEFFERSON 
SAINT CHARLES 
SAINT BERNARD 
PLAQUEMINES 
ST JOHN THE BAPTIST 
SAINT JAMES 
ORLEANS 
LAFOURCHE 
ASSUMPTION 
SAINT MARY 
TERREBONNE 
ASCENSION 
TANGIPAHOA 
SAINT TAMMANY 
WASHINGTON 
SAINT HELENA 
LIVINGSTON 
LAFAYETTE 
VERMILION 
SAINT LANDRY 
IBERIA 
EVANGELINE 
ACADIA 
SAINT MARTIN 
JEFFERSON DAVIS 
CALCASIEU 
CAMERON 
BEAUREGARD 
ALLEN 
VERNON 
EAST BATON ROUGE 
WEST BATON ROUGE 
WEST FELICIANA 
POINTE COUPEE 
IBERVILLE 
EAST FELICIANA 
BIENVILLE 
NATCHITOCHES 
CLAIBORNE 
CADDO 
BOSSIER 
WEBSTER 
RED RIVER 
DE SOTO 
SABINE 
OUACHITA 
RICHLAND 
FRANKLIN 
MOREHOUSE 
UNION 
JACKSON 
LINCOLN 
MADISON 
WEST CARROLL 
EAST CARROLL 
RAPIDES 
CONCORDIA 
AVOYELLES 
CATAHOULA 
LA SALLE 
TENSAS 
WINN 
GRANT 
CALDWELL 
+0

鏈接是所有狀態/縣(教區等)的CSV文件,與它們對應的FIPS碼和緯度/經度重心,從美國人口普查2013地名索引爲縣的。它免費爲任何人使用: http://www.opengeocode.org/download.php#statecounty –

+0

OpenGeoCode的網站託管帳戶已被暫停? –