如何在mysql中组织国家/地区数据(国家,州和城市等)?
因为每个国家都有3个表:国家,州和城市。
我应该将每个国家/地区放在单独的一组表格中,还是应该将这些表格全部放在这3个表格中?如果我把所有这些都放在同一张桌子里,恐怕行数会很大,因为我往往会有很多国家!
最佳做法是什么?
答案 0 :(得分:2)
这是一种方式:
country:
country_id (INT) | country_name (VARCHAR)
state:
state_id (INT) | country_id (INT) | state_name (VARCHAR)
city:
city_id (INT) | country_id (INT) | state_id (INT) | city_name (VARCHAR)
答案 1 :(得分:1)
countryTable(countryId(PK),countryName)
stateTable(stateId(PK),stateName,belongCountryId(FK))
cityTable(cityId(PK),cityTable,belongStateId(FK))
您可以使用“级联查询”或“创建”视图来从这3个表中获取信息。