- Java 双重比较
- java - 比较器与 Apache BeanComparator
- Objective-C 完成 block 导致额外的方法调用?
- database - RESTful URI 是否应该公开数据库主键?
我有国家、地区、县、城镇数据,目前我正在决定 2 种模式设计(如果有更好的,请告诉我)。
我首先想到的
国家
地区
县
城镇
然而,要获得一个国家/地区的所有城镇,您必须使用 3 个内部连接来进行过滤。我想这可能没问题,但可能很贵?
另一种设计是:
国家
地区
县
城镇
通过这种方式,可以说所有分层数据都位于底部,您可以返回上层,但是如果您想要一个国家/地区的所有地区,您就有点搞砸了,这让我们怀疑第一个设计是否是最好的。
您认为最好的模式设计是什么?
最佳答案
最好的数据库设计取决于数据的使用方式。
如果这是一次全部更新的相当静态的数据,并且外部引用全部指向城镇,那么我可能会选择非规范化维度。即,将信息全部存储在一行中:
在上述情况下,县、地区和国家的 ID 不是必需的(假设)。
如果数据作为具有不同 ID 的单独表格提供,并且这些表格可以独立更新或逐行更新,那么每个表格都有一个单独的表格是有意义的。将所有 ID 放入 towns
表中可能是也可能不是一个好主意。在插入和更新数据时,您必须验证和维护层次结构。
如果您需要每个级别的 ID,那么您应该有适当的表结构来声明外键约束。但是,这可能会变得复杂。外部实体是否具有可以处于任何级别的“地理”属性?外部人员是否总是知道它指的是什么级别?
换句话说,您需要知道数据将如何使用才能定义合适的数据模型。
关于sql - 国家、地区、县、镇的最佳数据库模式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41088786/
我有国家、地区、县、城镇数据,目前我正在决定 2 种模式设计(如果有更好的,请告诉我)。 我首先想到的 国家 身份证 姓名 地区 身份证 国家/地区 姓名 县 身份证 地区编号 姓名 城镇 身份证 县
我有两个数据集 df_state 和 df_city。 df_state 有一个数值的总和(net_value_x)。 df_city 在城市级别对数值 (value_x) 进行了分割 这只是德克萨斯
我有一个美国邮政编码及其对应的州、市和县的数据库。它以平面文件的形式提供,我正在尝试规范化数据并准确找出哪些实体依赖于哪些实体。 我遇到的一个问题是,有些城市似乎存在于多个县。我的印象是,在美国,存在
他们使用什么流程或 API 在他们的网站上提供此功能?如果它太复杂而无法解释,请您朝着正确的方向努力,以便也能够提供此功能。谢谢。 最佳答案 研究地理编码、地理标记和 GIS http://en.wi
R新手在这里。 如果我第一次使用 map('state') , 那么我如何使用 map('county', ylim=..., xlim=...)但像这样抵消它: 现在,我正在使用 imagemagi
以下查询适用于一种分类法 SELECT * FROM bb_posts AS p LEFT JOIN bb_term_relationships AS r ON (p.ID = r.object_id
利用 Mike Bostocks 美国各县区 block :https://bl.ocks.org/mbostock/4122298 。 目标是创建一个鼠标移动函数,在事件期间鼠标移动将突出显示所有选
在我的 MVC 应用程序中,我想显示用户访问网站的国家/地区、地区和城市。我怎样才能获取它们? 最佳答案 有几种方法。一种是要求用户与远程服务器共享他的位置。 https://developer.mo
我是一名优秀的程序员,十分优秀!