说明:总经理有2个
总经理下有隶属经理N个
每个隶属经理掌握1个或以上业务.但是所有业务的目标金额是一样的
架构
总经理 2
| |
---------------------------
| | | ....
| | | ....
隶属经理 2 3 .....
目标 目标 目标 ......
————————————————————
| | | ....... | .....
业务 业务 业务 .... 业务 ........
---------------------------------------------------
本月目标金额
本月完成金额
本月完成率
--------------------
1-8月目标总金额
1-8月完成总金额
1-8月完成率
--------------------------------------------------
本年度目标总金额
本年度完成总金额
本年度完成率
-----------------------------
我是这样设计的:
表名:总经理
字段 类型 主键 外键 索引 是否为空
姓名 varchar(12) T NOT
ID INT(1,1)
表名:隶属经理
字段 类型 主键 外键 索引 是否为空
姓名 varchar(12) T NOT
上级 varchar(12) T(总经理:姓名) NOT
ID INT(1,1)
表名:目标
字段 类型 主键 外键 索引 是否为空
目标金额 money NOT
负责人 varchar(12) T(隶属经理:姓名) NOT
年月 varchar(6) NOT
ID INT(1,1)
表名:实际
字段 类型 主键 外键 索引 是否为空
业务 varchar(20) NOT
完成金额 money NOT
负责人 varchar(12) T(隶属经理:姓名) NOT
年月 varchar(6) NOT
ID INT(1,1)
------解决方案--------------------
经理,隶属经理一个表,就叫经理表。 有一个自关联ID足以
目标,实际,一个表。本来就是一一对应的没必要分两个表
所以最终就两个表,经理表和 业务表
------解决方案--------------------
建议,后面3张一张表
------解决方案--------------------
总经理和隶属经理作为一个表,两者关系可以通过自连接实现。 其实就是用楼主的第二个表就够了,只不过总经理的上级这里为空。这个表可以归结为员工信息表。
目标单独一个表,这个是为了方便更新目标,如果业务和目标放在一个表,以后业务很多了。数据量很多要更新目标,就得更新所有记录,效率不高。
业务描述表 如果业务有描述,所属部门等这些描述信息。得需要一个业务描述表。
业务业绩表 就如楼主的第四个表,不过可能得考虑一下这个表的时间粒度,也就是记录基于每天,还是每月,每年。按照楼主给出的描述,应该到每月就好了,但是还是考虑多些好。
有所不妥之处,还请谅解。
PS:表的数量并不是越少越好(当然也不是越多越好),关键是合理,易用,易于扩展等等。
所以考虑就得多些。