我的问题如下:
我应该如何在关系模型中表示:
一个总部至少有0个或多个(0,N)公司,这些公司依赖于1个且只有1个总部。
知道:总部有许多类似于公司的领域。
- A) 我应该创建2个表吗?其中一家致电总部,另一家致电公司
- B) 它应该是同一个表上的递归吗
- C) 有没有其他方式来表示这种关系
如果总部的所有字段都与其他字段相同,则将同一个表与父字段单独使用效果非常好。但是,如果总部的某些属性不像您所说的那样由公司共享,那么您还需要为总部特定的数据建立一个单独的表。是的,有两张桌子。但以jbarker的想法为出发点。然后添加一个带有companyID外键的HQ表。总部记录将具有作为总部的公司的companyID,正如他所说,母公司的值为NULL。
至于你关于递归性的问题,你会对公司数据有递归关系或"自联接",而不是对总部特定的数据。