2013-03-19 176 views
0

基本上,我正在使用人力资源管理应用程序。员工职位数据库的MySQL数据库结构

职位(如培训师,副经理,经理等)根据他们的服务来填补。

有一个所有员工的列表,在任何给定的日期具有最高服务的列表中占据最高的位置。

关键职位的数量是固定的。根据员工在列表中的位置,他的可能位置将被显示。

的位置是这样的:

  • (位置 - 帖子数)
  • 总监 - 1名
  • 经理 - 3
  • 镝。经理 - 5
  • 教练 - 10

现在,在员工列表填充根据他们的经验,在列表中的第一个会主任,未来三年将是经理,以下5名员工将镝。管理人员和未来十人将成为培训师。

我想设计一个数据库表来存储位置和相关数字。可能会增加新的职位,并且职位数量可能会随着时间而改变。例如,如果董事职位的数量从一个增加到两个,则应该对其进行编辑。董事职位编号一经编辑,列表中的头两名雇员将被指定为可能的董事。同样的逻辑也适用于所有其他职位。

我不确定这样的表应该是什么样的数据库结构。完成后,我应该能够根据他在员工列表中的排名,使用php查询任何给定员工的可能职位。

例如,如果员工在排名第5位,我应该能够查询该表并获得可能的职位。在这种情况下,等级5将是Dy。经理。

希望我已经明确了我的要求。请帮助我为此设计数据库表。

谢谢!

回答

0
Employees 
========= 
name | Boss 
rank | 1 
doj | 2010-01-01 

“选择由等级员工为了名,司法部” 加入

司法部=日期指的是什么意思?

rank可以加入到另一个表,在那里你存储可读的排序题,以产生标题,姓名等

0

现有员工数据库表包括:

Employees 
========= 
name | Mark 
doj | 2010-01-01 
wrk | yes 

“选择的名字从员工在那里WRK =是为了通过司法部”

(这将删除数据库中的员工谁已离开公司,与状态WRK =无)

比方说,这将产生的结果是这样的:

Mark | 2010-01-01 
Steve | 2010-02-01 
Jack | 2010-04-01 
Rick | 2010-09-01 
David | 2010-12-01 

现在,当我根据他们的资历(假设位置经理= 1,DY获取结果并指定位置。经理= 3,培训师= 1),结果将是:

Rank | Name | Doj | Designation 
1 | Mark | 2010-01-01 | Manager 
2 | Steve | 2010-02-01 | Dy. Manager 
3 | Jack | 2010-04-01 | Dy. Manager 
4 | Rick | 2010-09-01 | Dy. Manager 
5 | David | 2010-12-01 | Trainer 

过了一段日子,让我们假设杰克退出公司(WRK他的状态就没有)。所以,取得的结果看起来如下:

Rank | Name | Doj | Designation 
1 | Mark | 2010-01-01 | Manager 
2 | Steve | 2010-02-01 | Dy. Manager 
3 | Rick | 2010-09-01 | Dy. Manager 
4 | David | 2010-12-01 | Dy. Manager 

随着杰克退出,大卫得到提升。等级只是基于获取的行数生成的序列号,自动递增。

现在,我想创建一个名称和职位数量的表格,以便根据排名取得名称。