【发布时间】:2012-03-15 21:29:26
【问题描述】:
我有一个 Excel 表格,其中包含所有曾为我公司工作并仍在为我们工作的员工。这是一张大约 200 行的表格。每行都有基本信息,如姓氏、姓名、职位、资格等。16列基本信息。现在,棘手的部分是这个。在 16 列之后,还有几个月(May-05 到现在 (Apr-12))。在每个月列下,员工要么获得 0(合同)、1(永久)、2(合同终止)或 3(学生)。
最好的方法是什么?我在考虑 4 张表(如下所列),其中一张表确定永久终止的人员(为了知道谁从事什么类型的工作)。
MySQL Table: hr_employees
|-----------------|-------|----|----|----|
| employee_number | name | sur| etc| etc|
|-----------------|-------|----|----|----|
| 1 | Dave | F | xx | xx |
|-----------------|-------|----|----|----|
MySQL Table: hr_month
|----|--------|
| id | month |
|----|--------|
| 1 | May-05 |
| 2 | Jun-05 |
|----|--------|
MySQL Table: hr_status
|----|------|------|--------|
| id | e_no | date | status |
|----|------|------|--------|
| 1 | 1 | 1 | 1 |
| 2 | 1 | 2 | 1 |
|----|------|------|--------|
MySQL Table: hr_terminated
|----|------|
| id | e_no |
|----|------|
| 1 | 1 |
| 2 | 1 |
|----|------|
我希望你们明白我想要达到的目标,否则,问一个问题,我会尽我所能回答! :)
谢谢。
【问题讨论】:
-
我会使用employee_number等代替id。更容易理解发生了什么。
-
是的,一旦我得到一个可行的设计,我就会更改名称! :) 还是)感谢你的建议! :)
-
我更喜欢前缀。 e_id, e_name, e_sur, ...., s_id, s_employee,s_date...等....在 JOIN 中它可以提供帮助。
-
我现在要更改名称,因为具有相同列名的多个表会使事情变得混乱。我的经验是,使用唯一的列名可以更快地发现问题。
标签: mysql database database-design