我有以下表格:Department
,Section
,Employee
,Manager
和Position
。各表之间的关系如下:
每个部门都有许多部门
每个部门包含许多职位,每个职位可能与不同的部门共享
每个部门都有一个经理
每个经理可能有不同的职位,例如,泌尿科主任是一个经理的职位,而作为员工,他是一个泌尿科顾问。作为一名雇员,他有两个职位。
如上图所示DepartmentSections
是部门和部门之间的联接表DepartmentPositions
是部门和职位之间的联接表
我现在的问题是,我应该如何配置管理器?我正在考虑建立两个关系,首先是manager和DepartmentSections
之间的关系,以及manager和DepartmentPositions
之间的关系,这里的问题是我将在表DepartmentId
中得到两个Manager
字段。
我的分析有错吗?如何构建此模型以避免表管理器中有两个departmentid?
最佳答案
关于你的帖子的一些想法。这不是一个答案(太长,无法评论),但可能会有所帮助。
每个部门都有许多部门
由此我猜您不需要查找表,因为这句话描述了一对多和不多对多的关系。您可以在DepartmentSections
表中添加DepartmentId
。
每个部门都有一个经理
所以您可以将Sections
添加到ManagerId
表中。
现在对于职位和经理,如果我理解正确,我会将Sections
添加到ManagerId
中。