【问题标题】:What is the best way to store city, state and country on MySQL? [closed]在 MySQL 上存储城市、州和国家/地区的最佳方式是什么? [关闭]
【发布时间】:2017-06-17 14:41:04
【问题描述】:

当我必须在表格中存储有关用户的城市、州和国家/地区的信息时,下面哪个是最好的方法?

  1. 用户表中有“州”、“城市”和“国家”字段
  2. 在用户表中有“id_city”,并且:
    • 带有“id”、“name”和“id_state”的表“cities”
    • 带有“id”、“name”和“id_country”的表“states”
    • 带有“id”和“name”的表“countries”

第二个将避免在错误的州和错误的国家出现错误的城市,例如:

'Munique','NY' - '巴西'。

但是当我需要选择用户所在的国家/地区时,我需要 3 个 JOINS!

那么,最好的方法是什么?

【问题讨论】:

  • 我会选择选项 2。您希望保持数据的引用完整性。
  • 选项 2. 节省磁盘空间。

标签: data-structures database-design architecture structure


【解决方案1】:

坚持选项2。

实际上,取决于用例和您的应用程序用户数量。这不会是一个问题。如果是这样,缓存会有所帮助(这些数据是一种静态数据。它们不会发生变化)。

【讨论】:

    猜你喜欢
    • 2012-06-13
    • 2011-01-21
    • 2015-11-18
    • 2017-09-02
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多